<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>The 2004 Allegro ScreenHack</title>
		<link>http://www.allegro.cc/forums/view/331094</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Sun, 29 Feb 2004 23:43:43 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>A few months/years ago we had a &#39;20 line&#39; programming contest, during which spellcaster suggested we have a 80x25 programming contest. I can&#39;t actually find the thread, since the forum search function is lame, but trust me. It happened. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>Anyway, I have decided to steal spellcaster&#39;s idea. (Hope you don&#39;t mind, sc? <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />) Let&#39;s do this thing.</p><p><b>The 2004 Allegro ScreenHack Rules</b><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>Who&#39;s up for the challenge? Prove your mettle! Post me some code! <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Goodbytes)</author>
		<pubDate>Fri, 30 Jan 2004 12:02:44 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I&#39;ll never forget a discussion on GameDev a few years ago. Someone complained that the way they implemented Tetris (OO with two files for each class I guess) made for 117 files (or some number like that). Someone said &quot;117 files? Tetris should be like 117 lines!&quot; and then the race was on to implement Tetris in a miminum of space. It was done in around 13 lines. I don&#39;t still have it, but many were surprised that it complied and ran.</p><p>So you can do a lot in 80x25, but it makes the code very difficult to read. I&#39;m keen to see what people come up with. I also remember a comp with 256 byte .com files, one of which was a space shooter.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Eric Love)</author>
		<pubDate>Fri, 30 Jan 2004 17:10:10 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Matthew did a tetris for the 20 line thing.<br />As for 25x80 - I guess it&#39;s neat, but I&#39;d rather see  a 2000 byte limit on filesize.</p><p>Anyway, I&#39;ll see if I can think of anything (and actually implement it) this weekend. I&#39;ve been meaning to get my chess programs ready for beta release for a few weeks now, and I hope to get round to that too.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Evert)</author>
		<pubDate>Fri, 30 Jan 2004 17:14:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>What about a contest in which the code should look like a logo or a screenshot of the game? The better the code represents the game it compiles to, the better. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Fladimir da Gorf)</author>
		<pubDate>Fri, 30 Jan 2004 17:18:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hmm... I&#39;ve seen  ASCII art Mandelbrot fractals, but I woudn&#39;t want to write code to generate one that at the same time looks like one <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /></p><p>It&#39;s a neat idea though.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Evert)</author>
		<pubDate>Fri, 30 Jan 2004 17:37:07 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>The secret is to modify the code to look almost something sensible. Even by adding or deleting spaces here and there can make it look like something.</p><p>Oh, and then there&#39;s the famous #defines to play with...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Fladimir da Gorf)</author>
		<pubDate>Fri, 30 Jan 2004 17:40:39 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>If you do these kind of things you have too much brainpower and should give some to me!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Trezker)</author>
		<pubDate>Fri, 30 Jan 2004 18:49:42 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I was bored so I made a lame tic tac toe <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":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;</span></td></tr><tr><td class="number">2</td><td><span class="p">#define I(x, y)if(x){y}</span></td></tr><tr><td class="number">3</td><td><span class="p">#define E(z)else{z}</span></td></tr><tr><td class="number">4</td><td><span class="p">#define C(y,z)case y: z break;</span></td></tr><tr><td class="number">5</td><td><span class="p">#define W(x,y){a, x, y, 60, 60, 255, 0, 0, 0, 0, 0},</span></td></tr><tr><td class="number">6</td><td><span class="k1">int</span> s<span class="k3">=</span><span class="n">0</span>,j<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">;</span><span class="k1">int</span> a<span class="k2">(</span><span class="k1">int</span> msg,<a href="http://www.allegro.cc/manual/DIALOG" target="_blank"><span class="a">DIALOG</span></a> <span class="k3">*</span>d,<span class="k1">int</span> c<span class="k2">)</span><span class="k2">{</span><span class="k1">switch</span><span class="k2">(</span>msg<span class="k2">)</span><span class="k2">{</span>C<span class="k2">(</span>MSG_DRAW,<a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,d</td></tr><tr><td class="number">7</td><td><span class="k3">-</span><span class="k3">&gt;</span>x,d-&gt;y,d-&gt;x<span class="k3">+</span>d-&gt;w,d-&gt;y<span class="k3">+</span>d-&gt;h,d-&gt;fg<span class="k2">)</span><span class="k2">;</span>I<span class="k2">(</span>d-&gt;d1,I<span class="k2">(</span>d-&gt;d2,<a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,d-&gt;x<span class="k3">+</span><span class="n">2</span>,d-&gt;y<span class="k3">+</span></td></tr><tr><td class="number">8</td><td><span class="n">2</span>,d-&gt;x<span class="k3">+</span>d-&gt;w-2,d-&gt;y<span class="k3">+</span>d-&gt;h-2,d-&gt;fg<span class="k2">)</span><span class="k2">;</span><span class="k2">)</span>E<span class="k2">(</span><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,d-&gt;x,d-&gt;y,d-&gt;x<span class="k3">+</span>d-&gt;w,d-&gt;y<span class="k3">+</span>d-&gt;h,d</td></tr><tr><td class="number">9</td><td><span class="k3">-</span><span class="k3">&gt;</span>fg<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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,d-&gt;x,d-&gt;y<span class="k3">+</span>d-&gt;h,d-&gt;x<span class="k3">+</span>d-&gt;w,d-&gt;y,d-&gt;fg<span class="k2">)</span><span class="k2">;</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span>C<span class="k2">(</span>MSG_LPRESS,I<span class="k2">(</span><span class="k3">!</span>d-&gt;d1,</td></tr><tr><td class="number">10</td><td>d-&gt;d2<span class="k3">=</span>s<span class="k2">;</span>d-&gt;d1<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>I<span class="k2">(</span>s,s<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">)</span>E<span class="k2">(</span>s<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> D_REDRAW<span class="k2">;</span><span class="k2">)</span><span class="k2">)</span><span class="k2">}</span><span class="k1">return</span> D_O_K<span class="k2">;</span><span class="k2">}</span><span class="k1">int</span> z<span class="k2">(</span><span class="k1">int</span> msg,</td></tr><tr><td class="number">11</td><td><a href="http://www.allegro.cc/manual/DIALOG" target="_blank"><span class="a">DIALOG</span></a> <span class="k3">*</span>d, <span class="k1">int</span> c<span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> x,y,p,l<span class="k2">;</span><a href="http://www.allegro.cc/manual/DIALOG" target="_blank"><span class="a">DIALOG</span></a> <span class="k3">*</span>b<span class="k3">=</span>d-&gt;dp<span class="k2">;</span><span class="k1">switch</span><span class="k2">(</span>msg<span class="k2">)</span><span class="k2">{</span>C<span class="k2">(</span>MSG_IDLE,<span class="k1">for</span><span class="k2">(</span>p<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>p<span class="k3">&lt;</span><span class="n">3</span></td></tr><tr><td class="number">12</td><td><span class="k2">;</span>p<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>x<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k3">&lt;</span><span class="n">3</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>l<span class="k3">=</span><span class="n">0</span><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">3</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>I<span class="k2">(</span>b<span class="k2">[</span><span class="n">1</span><span class="k3">+</span>y<span class="k3">*</span><span class="n">3</span><span class="k3">+</span>x<span class="k2">]</span>.d1<span class="k3">&amp;</span><span class="k3">&amp;</span>b<span class="k2">[</span><span class="n">1</span><span class="k3">+</span>y<span class="k3">*</span><span class="n">3</span><span class="k3">+</span>x<span class="k2">]</span>.d2<span class="k3">=</span><span class="k3">=</span>p,l</td></tr><tr><td class="number">13</td><td><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">)</span><span class="k2">}</span>I<span class="k2">(</span>l<span class="k3">=</span><span class="k3">=</span><span class="n">3</span>,j<span class="k2">[</span>p<span class="k2">]</span><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">return</span> D_CLOSE<span class="k2">;</span><span class="k2">)</span><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">3</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>l<span class="k3">=</span><span class="n">0</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">3</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>I<span class="k2">(</span>b<span class="k2">[</span><span class="n">1</span><span class="k3">+</span></td></tr><tr><td class="number">14</td><td>y<span class="k3">*</span><span class="n">3</span><span class="k3">+</span>x<span class="k2">]</span>.d1<span class="k3">&amp;</span><span class="k3">&amp;</span>b<span class="k2">[</span><span class="n">1</span><span class="k3">+</span>y<span class="k3">*</span><span class="n">3</span><span class="k3">+</span>x<span class="k2">]</span>.d2<span class="k3">=</span><span class="k3">=</span>p,l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">)</span><span class="k2">}</span>I<span class="k2">(</span>l<span class="k3">=</span><span class="k3">=</span><span class="n">3</span>,j<span class="k2">[</span>p<span class="k2">]</span><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">return</span> D_CLOSE<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>l<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>x<span class="k3">=</span><span class="n">0</span></td></tr><tr><td class="number">15</td><td><span class="k2">;</span>x<span class="k3">&lt;</span><span class="n">3</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>I<span class="k2">(</span>b<span class="k2">[</span><span class="n">1</span><span class="k3">+</span>y<span class="k3">*</span><span class="n">3</span><span class="k3">+</span>x<span class="k2">]</span>.d1<span class="k3">&amp;</span><span class="k3">&amp;</span>b<span class="k2">[</span><span class="n">1</span><span class="k3">+</span>y<span class="k3">*</span><span class="n">3</span><span class="k3">+</span>x<span class="k2">]</span>.d2<span class="k3">=</span><span class="k3">=</span>p,l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">)</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span>I<span class="k2">(</span>l<span class="k3">=</span><span class="k3">=</span><span class="n">3</span>,j<span class="k2">[</span>p<span class="k2">]</span><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">return</span> </td></tr><tr><td class="number">16</td><td>D_CLOSE<span class="k2">;</span><span class="k2">)</span>y<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><span class="k1">for</span><span class="k2">(</span>x<span class="k3">=</span><span class="n">2</span><span class="k2">;</span>x&gt;-1<span class="k2">;</span>x--<span class="k2">)</span><span class="k2">{</span>I<span class="k2">(</span>b<span class="k2">[</span><span class="n">1</span><span class="k3">+</span>y<span class="k3">*</span><span class="n">3</span><span class="k3">+</span>x<span class="k2">]</span>.d1<span class="k3">&amp;</span><span class="k3">&amp;</span>b<span class="k2">[</span><span class="n">1</span><span class="k3">+</span>y<span class="k3">*</span><span class="n">3</span><span class="k3">+</span>x<span class="k2">]</span>.d2<span class="k3">=</span><span class="k3">=</span>p,l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">)</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span>I</td></tr><tr><td class="number">17</td><td><span class="k2">(</span>l<span class="k3">=</span><span class="k3">=</span><span class="n">3</span>,j<span class="k2">[</span>p<span class="k2">]</span><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">return</span> D_CLOSE<span class="k2">;</span><span class="k2">)</span>l<span class="k3">=</span><span class="n">0</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">3</span><span class="k2">;</span>x<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>y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>y<span class="k3">&lt;</span><span class="n">3</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>I<span class="k2">(</span>b<span class="k2">[</span><span class="n">1</span><span class="k3">+</span>y<span class="k3">*</span><span class="n">3</span><span class="k3">+</span>x<span class="k2">]</span>.</td></tr><tr><td class="number">18</td><td>d1,l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">)</span>I<span class="k2">(</span>l<span class="k3">=</span><span class="k3">=</span><span class="n">9</span>,<span class="k1">return</span> D_CLOSE<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="k2">}</span><span class="k1">return</span> D_O_K<span class="k2">;</span><span class="k2">}</span><span class="k1">int</span> game<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/DIALOG" target="_blank"><span class="a">DIALOG</span></a> w<span class="k2">[</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="k2">{</span></td></tr><tr><td class="number">19</td><td><a href="http://www.allegro.cc/manual/d_clear_proc" target="_blank"><span class="a">d_clear_proc</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">16</span>,<span class="n">16</span><span class="k2">}</span>,W<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span><span class="k2">)</span>W<span class="k2">(</span><span class="n">0</span>,<span class="n">60</span><span class="k2">)</span>W<span class="k2">(</span><span class="n">0</span>,<span class="n">120</span><span class="k2">)</span>W<span class="k2">(</span><span class="n">60</span>,<span class="n">0</span><span class="k2">)</span>W<span class="k2">(</span><span class="n">60</span>,<span class="n">60</span><span class="k2">)</span>W<span class="k2">(</span><span class="n">60</span>,<span class="n">120</span><span class="k2">)</span>W<span class="k2">(</span><span class="n">120</span>,<span class="n">0</span></td></tr><tr><td class="number">20</td><td><span class="k2">)</span>W<span class="k2">(</span><span class="n">120</span>,<span class="n">60</span><span class="k2">)</span>W<span class="k2">(</span><span class="n">120</span>,<span class="n">120</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/d_ctext_proc" target="_blank"><span class="a">d_ctext_proc</span></a>,<span class="n">250</span>,<span class="n">20</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">40</span><span class="k2">}</span>,<span class="k2">{</span><a href="http://www.allegro.cc/manual/d_ctext_proc" target="_blank"><span class="a">d_ctext_proc</span></a>,<span class="n">250</span>,<span class="n">30</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span></td></tr><tr><td class="number">21</td><td><a href="http://www.allegro.cc/manual/d_ctext_proc" target="_blank"><span class="a">d_ctext_proc</span></a>,<span class="n">250</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">255</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="s">"TicTacToe"</span><span class="k2">}</span>,<span class="k2">{</span>z,<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="n">0</span>,<span class="n">0</span>,w<span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span><span class="k2">}</span><span class="k2">}</span></td></tr><tr><td class="number">22</td><td><span class="k2">;</span><span class="k1">char</span> v<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">[</span><span class="n">20</span><span class="k2">]</span><span class="k2">;</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_737.html" target="_blank">sprintf</a><span class="k2">(</span>v<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,<span class="s">"%d"</span>,j<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.delorie.com/djgpp/doc/libc/libc_737.html" target="_blank">sprintf</a><span class="k2">(</span>v<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,<span class="s">"%d"</span>,j<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span>w<span class="k2">[</span><span class="n">10</span><span class="k2">]</span>.dp<span class="k3">=</span>v<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span>w</td></tr><tr><td class="number">23</td><td><span class="k2">[</span><span class="n">11</span><span class="k2">]</span>.dp<span class="k3">=</span>v<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">;</span>I<span class="k2">(</span><a href="http://www.allegro.cc/manual/do_dialog" target="_blank"><span class="a">do_dialog</span></a><span class="k2">(</span>w,<span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="k3">-</span><span class="n">1</span>,<span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><span class="k2">)</span><span class="k1">return</span> game<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></td></tr><tr><td class="number">24</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_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_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_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span></td></tr><tr><td class="number">25</td><td>GFX_AUTODETECT_WINDOWED,<span class="n">320</span>,<span class="n">200</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>game<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: There, it should be working now.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (tareco)</author>
		<pubDate>Sat, 31 Jan 2004 05:16:10 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Bomberman, only without monsters, and no eye candy of course...
</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 L(x) for (x=0; x&lt;60;++x)</span></td></tr><tr><td class="number">3</td><td><span class="p">#define I t[y][x]</span></td></tr><tr><td class="number">4</td><td><span class="k1">typedef</span> <span class="k1">int</span> i<span class="k2">;</span><span class="k1">typedef</span> <span class="k1">void</span> v<span class="k2">;</span>i<span class="k2">(</span><span class="k3">*</span>k<span class="k2">)</span><span class="k2">(</span><span class="k2">)</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">;</span><a href="http://www.allegro.cc/manual/RGB" target="_blank"><span class="a">RGB</span></a> pl<span class="k2">[</span><span class="n">256</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="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">48</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">32</span></td></tr><tr><td class="number">5</td><td>,<span class="n">63</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">16</span>,<span class="n">16</span>,<span class="n">16</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">32</span>,<span class="n">32</span>,<span class="n">32</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">48</span>,<span class="n">48</span>,<span class="n">48</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">32</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">63</span>,<span class="n">63</span>,<span class="n">63</span><span class="k2">}</span><span class="k2">}</span><span class="k2">;</span><span class="k1">typedef</span> <span class="k1">struct</span><span class="k2">{</span>i t<span class="k2">;</span>i</td></tr><tr><td class="number">6</td><td>c<span class="k2">;</span><span class="k2">}</span>T<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>s<span class="k2">;</span>i h<span class="k3">=</span><span class="n">480</span>,z<span class="k3">=</span><span class="n">60</span>,X<span class="k3">=</span><span class="n">0</span>,Y<span class="k3">=</span><span class="n">0</span>,c<span class="k3">=</span><span class="n">0</span>,d<span class="k3">=</span><span class="n">0</span>,g<span class="k3">=</span><span class="n">0</span>,e<span class="k3">=</span><span class="n">1</span>,m<span class="k3">=</span><span class="n">9000</span><span class="k2">;</span>T t<span class="k2">[</span><span class="n">60</span><span class="k2">]</span><span class="k2">[</span><span class="n">60</span><span class="k2">]</span><span class="k2">;</span>v C<span class="k2">(</span>i</td></tr><tr><td class="number">7</td><td>x,i y,i cl<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">4</span>,y<span class="k3">+</span><span class="n">4</span>,<span class="n">3</span>,cl<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">+</span><span class="n">4</span>,y<span class="k3">+</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="k2">}</span>i R<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> X<span class="k3">*</span><span class="n">8</span><span class="k3">+</span><span class="k2">(</span></td></tr><tr><td class="number">8</td><td><span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>?c:<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="k3">-</span>c<span class="k2">)</span><span class="k2">:</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>i S<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> Y<span class="k3">*</span><span class="n">8</span><span class="k3">+</span><span class="k2">(</span><span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k2">)</span>?c:<span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">4</span><span class="k2">)</span>?<span class="k2">(</span><span class="k3">-</span>c<span class="k2">)</span><span class="k2">:</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>i E<span class="k2">(</span>i,i<span class="k2">)</span><span class="k2">;</span>v p</td></tr><tr><td class="number">9</td><td><span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>i x,y<span class="k2">;</span>L<span class="k2">(</span>y<span class="k2">)</span>L<span class="k2">(</span>x<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="k3">*</span><span class="n">8</span>,y<span class="k3">*</span><span class="n">8</span>,x<span class="k3">*</span><span class="n">8</span><span class="k3">+</span><span class="n">8</span>,y<span class="k3">*</span><span class="n">8</span><span class="k3">+</span><span class="n">8</span>,<span class="k2">(</span>I.t<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span>?<span class="n">6</span><span class="k2">:</span>I.t<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>I.t<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>I.t<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">10</td><td>C<span class="k2">(</span>x<span class="k3">*</span><span class="n">8</span>,y<span class="k3">*</span><span class="n">8</span>,I.t<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>C<span class="k2">(</span>R<span class="k2">(</span><span class="k2">)</span>,S<span class="k2">(</span><span class="k2">)</span>,<span class="n">7</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><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,s,<span class="n">0</span>,<span class="n">0</span>,<span class="n">80</span>,<span class="n">0</span>,h,h<span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>s,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">0</span>,</td></tr><tr><td class="number">11</td><td><span class="n">0</span>,<span class="n">7</span>,<span class="s">"%3is"</span>,m<span class="k3">/</span><span class="n">60</span><span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>s,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">0</span>,<span class="n">10</span>,<span class="n">2</span>,<span class="s">"%i"</span>,e<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>v pe<span class="k2">(</span>i xx,i yy<span class="k2">)</span><span class="k2">{</span>i x<span class="k3">=</span>xx,y<span class="k3">=</span>yy<span class="k2">;</span>I</td></tr><tr><td class="number">12</td><td>.t<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>I.c<span class="k3">=</span>z<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>x<span class="k3">=</span>xx<span class="k3">+</span><span class="n">1</span><span class="k2">;</span><span class="k2">(</span>x<span class="k3">&lt;</span><span class="k3">=</span>MIN<span class="k2">(</span>xx<span class="k3">+</span>e,<span class="n">59</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span> E<span class="k2">(</span>x,y<span class="k2">)</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>x<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>x<span class="k3">=</span>xx-1<span class="k2">;</span><span class="k2">(</span>x&gt;<span class="k3">=</span>MAX<span class="k2">(</span>xx-e,<span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">13</td><td><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span> E<span class="k2">(</span>x,y<span class="k2">)</span><span class="k2">;</span><span class="k3">-</span><span class="k3">-</span>x<span class="k2">)</span><span class="k2">;</span>x<span class="k3">=</span>xx<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>y<span class="k3">=</span>yy<span class="k3">+</span><span class="n">1</span><span class="k2">;</span><span class="k2">(</span>y<span class="k3">&lt;</span><span class="k3">=</span>MIN<span class="k2">(</span>yy<span class="k3">+</span>e,<span class="n">59</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span> E<span class="k2">(</span>x,y<span class="k2">)</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>y<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>y<span class="k3">=</span>yy-1<span class="k2">;</span><span class="k2">(</span>y&gt;<span class="k3">=</span></td></tr><tr><td class="number">14</td><td>MAX<span class="k2">(</span>yy-e,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span> E<span class="k2">(</span>x,y<span class="k2">)</span><span class="k2">;</span><span class="k3">-</span><span class="k3">-</span>y<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>i E<span class="k2">(</span>i x,i y<span class="k2">)</span><span class="k2">{</span>i f<span class="k3">=</span>I.t<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>f<span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k2">)</span>pe<span class="k2">(</span>x,y<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>f<span class="k3">=</span><span class="k3">=</span><span class="n">4</span><span class="k2">)</span><span class="k1">return</span></td></tr><tr><td class="number">15</td><td><span class="n">0</span><span class="k2">;</span>I.t<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>I.c<span class="k3">=</span>z<span class="k2">;</span><span class="k1">return</span> <span class="k3">!</span>f<span class="k2">;</span><span class="k2">}</span>v u<span class="k2">(</span>i x,i y<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>I.c<span class="k2">)</span><span class="k3">-</span><span class="k3">-</span>I.c<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>I.c<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>I.t<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>I.t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>I</td></tr><tr><td class="number">16</td><td>.t<span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k2">)</span>pe<span class="k2">(</span>x,y<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>i main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>i x,y<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">0</span>,</td></tr><tr><td class="number">17</td><td><span class="n">640</span>,h,<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><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>s<span class="k3">=</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a><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>h,h<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/set_palette" target="_blank"><span class="a">set_palette</span></a><span class="k2">(</span>pl<span class="k2">)</span><span class="k2">;</span>L<span class="k2">(</span>y<span class="k2">)</span>L<span class="k2">(</span>x<span class="k2">)</span></td></tr><tr><td class="number">18</td><td>I.t<span class="k3">=</span><span class="k2">(</span>x<span class="k3">&amp;</span>y<span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</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>x<span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>y<span class="k3">&amp;</span><span class="n">1</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">+</span>y&gt;3<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</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="k3">&amp;</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span>?<span class="n">5</span><span class="k2">:</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>L<span class="k2">(</span>x<span class="k2">)</span>t<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>%z<span class="k2">)</span><span class="k3">&amp;</span>~<span class="n">1</span><span class="k2">]</span><span class="k2">[</span></td></tr><tr><td class="number">19</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>%z<span class="k2">)</span><span class="k3">&amp;</span>~<span class="n">1</span><span class="k2">]</span>.t<span class="k3">=</span><span class="n">2</span><span class="k2">;</span>t<span class="k2">[</span><span class="n">59</span><span class="k2">]</span><span class="k2">[</span><span class="n">59</span><span class="k2">]</span>.t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">do</span><span class="k2">{</span>p<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k3">-</span><span class="k3">-</span>m<span class="k2">;</span>L<span class="k2">(</span>y<span class="k2">)</span>L<span class="k2">(</span>x<span class="k2">)</span>u<span class="k2">(</span>x,y<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>d<span class="k2">)</span><span class="k3">+</span><span class="k3">+</span>c<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k2">(</span>c<span class="k3">&amp;</span><span class="n">7</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>X</td></tr><tr><td class="number">20</td><td><span class="k3">=</span>R<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span><span class="n">8</span><span class="k2">;</span>Y<span class="k3">=</span>S<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span><span class="n">8</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>t<span class="k2">[</span>Y<span class="k2">]</span><span class="k2">[</span>X<span class="k2">]</span>.t<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>m<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>t<span class="k2">[</span>Y<span class="k2">]</span><span class="k2">[</span>X<span class="k2">]</span>.t<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span><span class="k3">+</span><span class="k3">+</span>e<span class="k2">;</span>m<span class="k3">+</span><span class="k3">=</span><span class="n">120</span><span class="k2">;</span>t<span class="k2">[</span>Y<span class="k2">]</span><span class="k2">[</span>X<span class="k2">]</span>.t<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><span class="k2">(</span></td></tr><tr><td class="number">21</td><td>X<span class="k3">=</span><span class="k3">=</span><span class="n">59</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>Y<span class="k3">=</span><span class="k3">=</span><span class="n">59</span><span class="k2">)</span><span class="k2">)</span>g<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>d<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>d<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>d<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">84</span><span class="k2">]</span><span class="k2">)</span>d<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></td></tr><tr><td class="number">22</td><td>d<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>c<span class="k3">=</span><span class="n">8</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>R<span class="k2">(</span><span class="k2">)</span><span class="k3">&gt;</span><span class="k3">=</span>h<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>R<span class="k2">(</span><span class="k2">)</span><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>S<span class="k2">(</span><span class="k2">)</span><span class="k3">&gt;</span><span class="k3">=</span>h<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>S<span class="k2">(</span><span class="k2">)</span><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>t<span class="k2">[</span>S<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span><span class="n">8</span><span class="k2">]</span><span class="k2">[</span>R<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span><span class="n">8</span><span class="k2">]</span>.t&gt;2<span class="k2">)</span><span class="k2">)</span>d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>c<span class="k3">=</span><span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">23</td><td><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 j<span class="k3">=</span>k<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>j<span class="k3">=</span><span class="k3">=</span><span class="n">75</span><span class="k2">)</span><span class="k2">{</span>t<span class="k2">[</span>Y<span class="k2">]</span><span class="k2">[</span>X<span class="k2">]</span>.t<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>t<span class="k2">[</span>Y<span class="k2">]</span><span class="k2">[</span>X<span class="k2">]</span>.c<span class="k3">=</span><span class="n">180</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>j<span class="k3">=</span><span class="k3">=</span><span class="n">59</span><span class="k2">)</span>m<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span></td></tr><tr><td class="number">24</td><td><span class="k2">}</span><span class="k1">while</span><span class="k2">(</span>m <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k3">!</span>g<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">1000</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/keypressed" target="_blank"><span class="a">keypressed</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>k<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>clear<span class="k2">(</span>s<span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>s,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">260</span></td></tr><tr><td class="number">25</td><td>,<span class="n">240</span>,g?<span class="n">7</span><span class="k2">:</span><span class="n">1</span>,<span class="s">"You %s! Score:%i"</span>,g?<span class="s">"win"</span><span class="k2">:</span><span class="s">"lose"</span>,m<span class="k3">/</span>z<span class="k2">)</span><span class="k2">;</span>k<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 (Tobias Dammers)</author>
		<pubDate>Mon, 02 Feb 2004 02:39:44 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Just to show you all how incredibly freaking awesome I am, I wrote a program to allow you do unobfuscate the program I submit to the competition. I have this contest in the bag. <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" /></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; /*              Obfuscated Code Jigsaw - Ryan Patterson */</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;stdio.h&gt; /*         This program is my entry into the 2004 Allegro */</span></td></tr><tr><td class="number">3</td><td><span class="p">#include &lt;string.h&gt; /*  ScreenHack competition. The game is a classic jigsaw */</span></td></tr><tr><td class="number">4</td><td><span class="c">/*      puzzle. Simply move pieces around to piece back together my horribly */</span></td></tr><tr><td class="number">5</td><td><span class="c">/*   obfuscated code. Compiles with gcc 3.3.1 and MSVC 7. Note that the file */</span></td></tr><tr><td class="number">6</td><td><span class="c">/* needs to be run from the same directory as its source file -- it reads in */</span></td></tr><tr><td class="number">7</td><td><span class="c">/*   its source as the background for the puzzle. Even has animation. Enjoy! */</span></td></tr><tr><td class="number">8</td><td><span class="k1">int</span> i,x,y,p<span class="k3">=</span><span class="n">4</span>,m<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>b<span class="k2">[</span><span class="n">25</span><span class="k2">]</span>,<span class="k3">*</span>d<span class="k2">[</span><span class="n">25</span><span class="k2">]</span>,<span class="k3">*</span>s,<span class="k3">*</span>w<span class="k2">;</span><span class="k1">char</span> l<span class="k2">[</span><span class="n">81</span><span class="k2">]</span>,<span class="k3">*</span>c<span class="k2">;</span>k<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">=</span><span class="k3">=</span>p-1<span class="k3">&amp;</span><span class="k3">&amp;</span>p%<span class="n">5</span><span class="k3">!</span><span class="k3">=</span></td></tr><tr><td class="number">9</td><td><span class="n">0</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>i<span class="k3">=</span><span class="k3">=</span>p<span class="k3">+</span><span class="n">1</span><span class="k3">&amp;</span><span class="k3">&amp;</span>p%<span class="n">5</span><span class="k3">!</span><span class="k3">=</span><span class="n">4</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>i<span class="k3">=</span><span class="k3">=</span>p<span class="k3">+</span><span class="n">5</span><span class="k3">&amp;</span><span class="k3">&amp;</span>p<span class="k3">&lt;</span><span class="n">20</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>i<span class="k3">=</span><span class="k3">=</span>p-5<span class="k3">&amp;</span><span class="k3">&amp;</span>p&gt;4<span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>w<span class="k3">=</span>b<span class="k2">[</span>p<span class="k2">]</span><span class="k2">;</span>b<span class="k2">[</span>p<span class="k2">]</span><span class="k3">=</span>b<span class="k3">&lt;</span>i&gt;<span class="k2">;</span>b<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>w<span class="k2">;</span>p<span class="k3">=</span></td></tr><tr><td class="number">10</td><td>i<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k3">*</span>l<span class="k2">)</span><span class="k3">+</span><span class="k3">+</span>m<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>FILE<span class="k3">*</span>f<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_337.html" target="_blank">fopen</a><span class="k2">(</span>__FILE__,<span class="s">"r"</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><a href="http://www.allegro.cc/manual/allegro_init" target="_blank"><span class="a">allegro_init</span></a></td></tr><tr><td class="number">11</td><td><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><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_AUT\</td></tr><tr><td class="number">12</td><td>ODETECT_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>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">200</span><span class="k2">)</span><span class="k2">;</span>clear<span class="k2">(</span>s<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="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span></td></tr><tr><td class="number">13</td><td><a href="http://www.delorie.com/djgpp/doc/libc/libc_313.html" target="_blank">feof</a><span class="k2">(</span>f<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_320.html" target="_blank">fgets</a><span class="k2">(</span>l,<span class="n">81</span>,f<span class="k2">)</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>i,<span class="k3">*</span>l<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.delorie.com/djgpp/doc/libc/libc_764.html" target="_blank">strlen</a><span class="k2">(</span>l<span class="k2">)</span><span class="k3">&lt;</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span><span class="k3">-</span><span class="k3">-</span>i<span class="k2">;</span><span class="k1">continue</span><span class="k2">;</span><span class="k2">}</span>c<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_753.html" target="_blank">strchr</a><span class="k2">(</span>l,<span class="n">13</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">14</td><td><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>c<span class="k2">)</span>c<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_753.html" target="_blank">strchr</a><span class="k2">(</span>l,<span class="n">10</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>c<span class="k2">)</span><span class="k3">*</span>c<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>textout<span class="k2">(</span>s,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,l,<span class="n">0</span>,i<span class="k3">*</span><span class="n">8</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.delorie.com/djgpp/doc/libc/libc_308.html" target="_blank">fclose</a><span class="k2">(</span>f<span class="k2">)</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></td></tr><tr><td class="number">15</td><td><span class="n">5</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>x<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">5</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>y<span class="k2">)</span>b<span class="k2">[</span>y<span class="k3">*</span><span class="n">5</span><span class="k3">+</span>x<span class="k2">]</span><span class="k3">=</span>d<span class="k2">[</span>y<span class="k3">*</span><span class="n">5</span><span class="k3">+</span>x<span class="k2">]</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/create_sub_bitmap" target="_blank"><span class="a">create_sub_bitmap</span></a><span class="k2">(</span>s,x<span class="k3">*</span><span class="n">128</span>,y<span class="k3">*</span><span class="n">40</span>,<span class="n">128</span>,<span class="n">40</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">16</td><td>clear<span class="k2">(</span>b<span class="k2">[</span>p<span class="k2">]</span><span class="k2">)</span><span class="k2">;</span><span class="k3">*</span>l<span class="k3">=</span><span class="n">1</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="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k3">*</span>l<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.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><span class="k1">continue</span><span class="k2">;</span>i<span class="k3">=</span><span class="k2">(</span>mous\</td></tr><tr><td class="number">17</td><td>e_y<span class="k3">/</span><span class="n">40</span><span class="k2">)</span><span class="k3">*</span><span class="n">5</span><span class="k3">+</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k3">/</span><span class="n">128</span><span class="k2">)</span><span class="k2">;</span>k<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">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">5</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>x<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">5</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>y<span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k3">*</span><span class="n">5</span><span class="k3">+</span>x<span class="k2">]</span><span class="k3">!</span><span class="k3">=</span>d<span class="k2">[</span></td></tr><tr><td class="number">18</td><td>y<span class="k3">*</span><span class="n">5</span><span class="k3">+</span>x<span class="k2">]</span><span class="k2">)</span>i<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>i<span class="k2">)</span><span class="k2">{</span>textprintf<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">392</span>,<span class="n">168</span>,<span class="n">0xff00</span>,<span class="s">"You won in %d moves!"</span>,</td></tr><tr><td class="number">19</td><td>m<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.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="k2">}</span><span class="k1">else</span><span class="k2">{</span>textprintf<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">392</span>,<span class="n">168</span>,<span class="n">0xff0000</span>,<span class="s">"\</span></td></tr><tr><td class="number">20</td><td><span class="s">Randomizing... %d%%"</span>,<span class="k2">(</span><span class="k1">unsigned</span> <span class="k1">char</span><span class="k2">)</span><span class="k3">*</span>l<span class="k3">*</span><span class="n">100</span><span class="k3">/</span><span class="n">255</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">100</span><span class="k2">)</span><span class="k2">;</span><span class="k1">switch</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">4</span><span class="k2">)</span><span class="k2">{</span><span class="k1">case</span></td></tr><tr><td class="number">21</td><td><span class="n">0</span><span class="k2">:</span>i<span class="k3">=</span>p-1<span class="k2">;</span><span class="k1">break</span><span class="k2">;</span><span class="k1">case</span> <span class="n">1</span><span class="k2">:</span>i<span class="k3">=</span>p<span class="k3">+</span><span class="n">1</span><span class="k2">;</span><span class="k1">break</span><span class="k2">;</span><span class="k1">case</span> <span class="n">2</span><span class="k2">:</span>i<span class="k3">=</span>p-5<span class="k2">;</span><span class="k1">break</span><span class="k2">;</span><span class="k1">case</span> <span class="n">3</span><span class="k2">:</span>i<span class="k3">=</span>p<span class="k3">+</span><span class="n">5</span><span class="k2">;</span><span class="k1">break</span><span class="k2">;</span><span class="k2">}</span>k<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span><span class="k3">*</span></td></tr><tr><td class="number">22</td><td>l<span class="k2">;</span><span class="k2">}</span><a href="http://www.allegro.cc/manual/show_mouse" target="_blank"><span class="a">show_mouse</span></a><span class="k2">(</span>NULL<span class="k2">)</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">5</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>x<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">5</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>y<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<span class="k2">[</span>y<span class="k3">*</span><span class="n">5</span><span class="k3">+</span>x<span class="k2">]</span>,<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>,x<span class="k3">*</span></td></tr><tr><td class="number">23</td><td><span class="n">128</span>,y<span class="k3">*</span><span class="n">40</span>,<span class="n">128</span>,<span class="n">40</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>x<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>x<span class="k3">&lt;</span><span class="n">5</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>x<span class="k2">)</span><a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,x<span class="k3">*</span><span class="n">128</span>,<span class="n">0</span>,<span class="n">200</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><span class="n">1</span><span class="k2">;</span>y<span class="k3">&lt;</span><span class="n">5</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>y<span class="k2">)</span>\</td></tr><tr><td class="number">24</td><td><a href="http://www.allegro.cc/manual/hline" target="_blank"><span class="a">hline</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,y<span class="k3">*</span><span class="n">40</span>,<span class="n">640</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/show_mouse" target="_blank"><span class="a">show_mouse</span></a><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><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><span class="k3">+</span><span class="k3">+</span>i<span class="k2">)</span><a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a></td></tr><tr><td class="number">25</td><td><span class="k2">(</span>b<span class="k3">&lt;</span>i&gt;<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="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">/*Thanks for playing! Hope you enjoyed*/</span></td></tr></tbody></table></div></div><p>

[edit]<br />I tried the other two... Tareco&#39;s crashed (after I set the gfx mode to GFX_AUTODETECT_WINDOWED), and I couldn&#39;t get Tobias&#39; to do anything...</p><p>[edit]<br />Well, I tried again and got Tobias&#39; to do something... But how do you win or lose?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Mon, 02 Feb 2004 10:26:26 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>OK, didn&#39;t include much info...<br />Goal is to reach bottom-right corner before time elapses. Picking up blue blobs increases explosion radius and gives 1 extra second.<br />Keys: Cursor keys move, space drops bomb, esc aborts.<br />Here&#39;s the new version; I also included a fade-out at the end, a clock counter and an explosion range display (blue number).
</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 L(x) for (x=0; x&lt;60;++x)</span></td></tr><tr><td class="number">3</td><td><span class="p">#define I t[y][x]</span></td></tr><tr><td class="number">4</td><td><span class="k1">typedef</span> <span class="k1">int</span> i<span class="k2">;</span><span class="k1">typedef</span> <span class="k1">void</span> v<span class="k2">;</span>i<span class="k2">(</span><span class="k3">*</span>k<span class="k2">)</span><span class="k2">(</span><span class="k2">)</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">;</span><a href="http://www.allegro.cc/manual/RGB" target="_blank"><span class="a">RGB</span></a> l<span class="k2">[</span><span class="n">256</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="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">48</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">32</span>,</td></tr><tr><td class="number">5</td><td><span class="n">63</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">16</span>,<span class="n">16</span>,<span class="n">16</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">32</span>,<span class="n">32</span>,<span class="n">32</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">48</span>,<span class="n">48</span>,<span class="n">48</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">32</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">63</span>,<span class="n">63</span>,<span class="n">63</span><span class="k2">}</span><span class="k2">}</span><span class="k2">;</span>i h<span class="k3">=</span><span class="n">480</span>,z<span class="k3">=</span><span class="n">60</span>,X<span class="k3">=</span><span class="n">0</span>,Y<span class="k3">=</span><span class="n">0</span>,c</td></tr><tr><td class="number">6</td><td><span class="k3">=</span><span class="n">0</span>,d<span class="k3">=</span><span class="n">0</span>,g<span class="k3">=</span><span class="n">0</span>,e<span class="k3">=</span><span class="n">1</span>,m<span class="k3">=</span><span class="n">9000</span><span class="k2">;</span><span class="k1">typedef</span> <span class="k1">struct</span><span class="k2">{</span>i t<span class="k2">;</span>i c<span class="k2">;</span><span class="k2">}</span>T<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>s<span class="k2">;</span>T t<span class="k2">[</span><span class="n">60</span><span class="k2">]</span><span class="k2">[</span><span class="n">60</span><span class="k2">]</span><span class="k2">;</span>v C<span class="k2">(</span>i x</td></tr><tr><td class="number">7</td><td>,i y,i a<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">4</span>,y<span class="k3">+</span><span class="n">4</span>,a?<span class="n">3</span><span class="k2">:</span><span class="n">4</span>,a<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>i R<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> X<span class="k3">*</span><span class="n">8</span><span class="k3">+</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>?c:<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="k3">-</span>c<span class="k2">)</span><span class="k2">:</span></td></tr><tr><td class="number">8</td><td><span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>i S<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> Y<span class="k3">*</span><span class="n">8</span><span class="k3">+</span><span class="k2">(</span><span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k2">)</span>?c:<span class="k2">(</span>d<span class="k3">=</span><span class="k3">=</span><span class="n">4</span><span class="k2">)</span>?<span class="k2">(</span><span class="k3">-</span>c<span class="k2">)</span><span class="k2">:</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>v p<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>i x,y<span class="k2">;</span>L<span class="k2">(</span>y<span class="k2">)</span>L<span class="k2">(</span>x<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</td></tr><tr><td class="number">9</td><td><span class="k3">*</span><span class="n">8</span>,y<span class="k3">*</span><span class="n">8</span>,x<span class="k3">*</span><span class="n">8</span><span class="k3">+</span><span class="n">8</span>,y<span class="k3">*</span><span class="n">8</span><span class="k3">+</span><span class="n">8</span>,<span class="k2">(</span>I.t<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span>?<span class="n">6</span><span class="k2">:</span>I.t<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>I.t<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>I.t<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>C<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="n">0</span><span class="k2">)</span><span class="k2">;</span>C<span class="k2">(</span>x<span class="k3">*</span><span class="n">8</span>,y<span class="k3">*</span><span class="n">8</span>,I.t<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">10</td><td><span class="k2">}</span>C<span class="k2">(</span>R<span class="k2">(</span><span class="k2">)</span>,S<span class="k2">(</span><span class="k2">)</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>C<span class="k2">(</span>R<span class="k2">(</span><span class="k2">)</span>,S<span class="k2">(</span><span class="k2">)</span>,<span class="n">7</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><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,s,<span class="n">0</span>,<span class="n">0</span>,<span class="n">80</span>,<span class="n">0</span>,h,h<span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>s,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">0</span>,<span class="n">0</span>,</td></tr><tr><td class="number">11</td><td><span class="n">7</span>,<span class="s">"%3is"</span>,m<span class="k3">/</span><span class="n">60</span><span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>s,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">0</span>,<span class="n">10</span>,<span class="n">2</span>,<span class="s">"%i"</span>,e<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>i E<span class="k2">(</span>i,i<span class="k2">)</span><span class="k2">;</span>v n<span class="k2">(</span>i P,i Q<span class="k2">)</span><span class="k2">{</span>i x<span class="k3">=</span>P,y<span class="k3">=</span>Q</td></tr><tr><td class="number">12</td><td><span class="k2">;</span>I.t<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>I.c<span class="k3">=</span>z<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>x<span class="k3">=</span>P<span class="k3">+</span><span class="n">1</span><span class="k2">;</span><span class="k2">(</span>x<span class="k3">&lt;</span><span class="k3">=</span>MIN<span class="k2">(</span>P<span class="k3">+</span>e,<span class="n">59</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span> E<span class="k2">(</span>x,y<span class="k2">)</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>x<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>x<span class="k3">=</span>P-1<span class="k2">;</span><span class="k2">(</span>x&gt;<span class="k3">=</span>MAX<span class="k2">(</span>P-e,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">13</td><td><span class="k3">&amp;</span><span class="k3">&amp;</span> E<span class="k2">(</span>x,y<span class="k2">)</span><span class="k2">;</span><span class="k3">-</span><span class="k3">-</span>x<span class="k2">)</span><span class="k2">;</span>x<span class="k3">=</span>P<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>y<span class="k3">=</span>Q<span class="k3">+</span><span class="n">1</span><span class="k2">;</span><span class="k2">(</span>y<span class="k3">&lt;</span><span class="k3">=</span>MIN<span class="k2">(</span>Q<span class="k3">+</span>e,<span class="n">59</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span> E<span class="k2">(</span>x,y<span class="k2">)</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>y<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>y<span class="k3">=</span>Q-1<span class="k2">;</span><span class="k2">(</span>y&gt;<span class="k3">=</span>MAX<span class="k2">(</span>Q-</td></tr><tr><td class="number">14</td><td>e,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span> E<span class="k2">(</span>x,y<span class="k2">)</span><span class="k2">;</span><span class="k3">-</span><span class="k3">-</span>y<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>i E<span class="k2">(</span>i x,i y<span class="k2">)</span><span class="k2">{</span>i f<span class="k3">=</span>I.t<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>f<span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k2">)</span>n<span class="k2">(</span>x,y<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>f<span class="k3">=</span><span class="k3">=</span><span class="n">4</span><span class="k2">)</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>I.t<span class="k3">=</span><span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">15</td><td>I.c<span class="k3">=</span>z<span class="k2">;</span><span class="k1">return</span> <span class="k3">!</span>f<span class="k2">;</span><span class="k2">}</span>v u<span class="k2">(</span>i x,i y<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>I.c<span class="k2">)</span><span class="k3">-</span><span class="k3">-</span>I.c<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>I.c<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>I.t<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>I.t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>I.t<span class="k3">=</span><span class="k3">=</span><span class="n">3</span><span class="k2">)</span>n<span class="k2">(</span></td></tr><tr><td class="number">16</td><td>x,y<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>i 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.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/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span><span class="n">0</span>,</td></tr><tr><td class="number">17</td><td><span class="n">640</span>,h,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>i x,y<span class="k2">;</span>s<span class="k3">=</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a><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>h,h<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/set_palette" target="_blank"><span class="a">set_palette</span></a><span class="k2">(</span>l<span class="k2">)</span><span class="k2">;</span>L<span class="k2">(</span>y<span class="k2">)</span>L<span class="k2">(</span>x<span class="k2">)</span>I.t<span class="k3">=</span><span class="k2">(</span>x<span class="k3">&amp;</span>y<span class="k3">&amp;</span><span class="n">1</span></td></tr><tr><td class="number">18</td><td><span class="k2">)</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>x<span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>y<span class="k3">&amp;</span><span class="n">1</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">+</span>y&gt;3<span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</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="k3">&amp;</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span>?<span class="n">5</span><span class="k2">:</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>L<span class="k2">(</span>x<span class="k2">)</span>t<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>%z<span class="k2">)</span><span class="k3">&amp;</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_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span>%z<span class="k2">)</span></td></tr><tr><td class="number">19</td><td><span class="k3">&amp;</span>~<span class="n">1</span><span class="k2">]</span>.t<span class="k3">=</span><span class="n">2</span><span class="k2">;</span>t<span class="k2">[</span><span class="n">59</span><span class="k2">]</span><span class="k2">[</span><span class="n">59</span><span class="k2">]</span>.t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">do</span><span class="k2">{</span>p<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k3">-</span><span class="k3">-</span>m<span class="k2">;</span>L<span class="k2">(</span>y<span class="k2">)</span>L<span class="k2">(</span>x<span class="k2">)</span>u<span class="k2">(</span>x,y<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>d<span class="k2">)</span><span class="k3">+</span><span class="k3">+</span>c<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k2">(</span>c<span class="k3">&amp;</span><span class="n">7</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>X<span class="k3">=</span>R<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span><span class="n">8</span><span class="k2">;</span>Y<span class="k3">=</span>S</td></tr><tr><td class="number">20</td><td><span class="k2">(</span><span class="k2">)</span><span class="k3">/</span><span class="n">8</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>t<span class="k2">[</span>Y<span class="k2">]</span><span class="k2">[</span>X<span class="k2">]</span>.t<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>m<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>t<span class="k2">[</span>Y<span class="k2">]</span><span class="k2">[</span>X<span class="k2">]</span>.t<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span><span class="k3">+</span><span class="k3">+</span>e<span class="k2">;</span>m<span class="k3">+</span><span class="k3">=</span><span class="n">120</span><span class="k2">;</span>t<span class="k2">[</span>Y<span class="k2">]</span><span class="k2">[</span>X<span class="k2">]</span>.t<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><span class="k2">(</span>X<span class="k3">=</span><span class="k3">=</span><span class="n">59</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>Y</td></tr><tr><td class="number">21</td><td><span class="k3">=</span><span class="k3">=</span><span class="n">59</span><span class="k2">)</span><span class="k2">)</span>g<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>d<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/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 j<span class="k3">=</span>k<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>j<span class="k3">=</span><span class="k3">=</span><span class="n">75</span><span class="k2">)</span><span class="k2">{</span>t<span class="k2">[</span>Y<span class="k2">]</span><span class="k2">[</span>X<span class="k2">]</span>.t<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>t<span class="k2">[</span>Y<span class="k2">]</span><span class="k2">[</span>X<span class="k2">]</span>.c<span class="k3">=</span><span class="n">180</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">22</td><td><span class="k1">if</span><span class="k2">(</span>j<span class="k3">=</span><span class="k3">=</span><span class="n">59</span><span class="k2">)</span>m<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">82</span><span class="k2">]</span><span class="k2">)</span>d<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>d<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">84</span><span class="k2">]</span><span class="k2">)</span>d<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>d<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>c<span class="k3">=</span><span class="n">8</span><span class="k2">;</span><span class="k1">if</span></td></tr><tr><td class="number">23</td><td><span class="k2">(</span><span class="k2">(</span>R<span class="k2">(</span><span class="k2">)</span><span class="k3">&gt;</span><span class="k3">=</span>h<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>R<span class="k2">(</span><span class="k2">)</span><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>S<span class="k2">(</span><span class="k2">)</span><span class="k3">&gt;</span><span class="k3">=</span>h<span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k2">(</span>S<span class="k2">(</span><span class="k2">)</span><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>t<span class="k2">[</span>S<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span><span class="n">8</span><span class="k2">]</span><span class="k2">[</span>R<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span><span class="n">8</span><span class="k2">]</span>.t&gt;2<span class="k2">)</span><span class="k2">)</span>d<span class="k3">=</span><span class="n">0</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">while</span><span class="k2">(</span>m</td></tr><tr><td class="number">24</td><td><span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k3">!</span>g<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/fade_out" target="_blank"><span class="a">fade_out</span></a><span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>clear<span class="k2">(</span>s<span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>s,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">260</span>,<span class="n">240</span>,g?<span class="n">7</span><span class="k2">:</span><span class="n">1</span>,<span class="s">"You %s! Score:%i"</span>,g</td></tr><tr><td class="number">25</td><td>?<span class="s">"win"</span><span class="k2">:</span><span class="s">"lose"</span>,m<span class="k3">/</span>z<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/set_palette" target="_blank"><span class="a">set_palette</span></a><span class="k2">(</span>l<span class="k2">)</span><span class="k2">;</span><span class="k1">while</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>k<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>k<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 (Tobias Dammers)</author>
		<pubDate>Mon, 02 Feb 2004 22:36:36 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Also had to try myself in this (disable warnings when compiling <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":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;       /*CURSOR LEFT/RIGHT: MOVE, CURSOR DOWN: POOR WATER*/</span></td></tr><tr><td class="number">2</td><td><span class="p">#define T(y,c,s,p) (y?textprintf_centre(buf,font,160,y,c,s,p),0:key[KEY_ESC])</span></td></tr><tr><td class="number">3</td><td><span class="p">#define R(s,x,y,w,h,c)(s?rectfill(buf,x,y-h,x+w,y,c),0:getpixel(buf,x,240+(y)))</span></td></tr><tr><td class="number">4</td><td><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">int</span> 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>,w<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,h<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,X,Y,i,j,ot,d,f,u<span class="k3">=</span><span class="n">0</span>,o<span class="k3">=</span><span class="n">0</span>,s<span class="k3">=</span><span class="n">1</span>,l<span class="k3">=</span><span class="n">1</span>,r,z</td></tr><tr><td class="number">5</td><td><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">void</span> tick<span class="k2">(</span><span class="k1">void</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="k2">;</span><span class="k1">int</span> main<span class="k2">(</span><span class="k1">void</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">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/allegro_init" target="_blank"><span class="a">allegro_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span></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,<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="k3">|</span><span class="k3">|</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>return-1<span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span></td></tr><tr><td class="number">7</td><td>buf<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>tick,BPS_TO_TIMER <span class="k2">(</span><span class="n">60</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>buf<span class="k3">=</span><a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a> <span class="k2">(</span><span class="n">320</span>,<span class="n">480</span><span class="k2">)</span><span class="k2">;</span>A:clear</td></tr><tr><td class="number">8</td><td><span class="k2">(</span>buf<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>y,<span class="n">0</span>,<span class="k1">sizeof</span> y<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>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span><span class="n">120</span><span class="k2">;</span>w<span class="k2">[</span><span class="n">0</span><span class="k2">]</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="n">20</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>buf,<span class="n">0</span>,<span class="n">479</span>,<span class="n">319</span>,<span class="n">42</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>T<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="k2">)</span><span class="k2">)</span><span class="k2">;</span>t<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>T<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="k2">)</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>o<span class="k3">|</span>s<span class="k2">)</span><span class="k1">goto</span> R<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k2">(</span>t % <span class="k2">(</span><span class="n">30</span> <span class="k3">-</span> l <span class="k3">*</span> <span class="n">2</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">10</td><td>i<span class="k3">=</span><span class="n">2</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">160</span><span class="k2">)</span><span class="k2">;</span>d<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">20</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>j<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>j<span class="k3">&lt;</span><span class="n">50</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><span class="k3">!</span>y<span class="k2">[</span>j<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>x<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span>i<span class="k2">;</span>i<span class="k3">=</span><span class="k2">(</span>i<span class="k3">+</span><span class="n">2</span><span class="k2">)</span>%</td></tr><tr><td class="number">11</td><td><span class="n">320</span><span class="k2">;</span>y<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span>w<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span>h<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span>d<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>buf,buf,<span class="n">0</span>,<span class="n">240</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="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">99</span><span class="k2">;</span>j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>X<span class="k3">=</span>x<span class="k2">[</span></td></tr><tr><td class="number">12</td><td>j<span class="k2">]</span><span class="k2">;</span>Y<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>j<span class="k3">&lt;</span><span class="n">50</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>Y<span class="k2">)</span><span class="k2">{</span>R<span class="k2">(</span><span class="n">1</span>,X,Y,w<span class="k2">[</span>j<span class="k2">]</span>,h<span class="k2">[</span>j<span class="k2">]</span>,j?<span class="n">76</span><span class="k3">+</span><span class="k2">(</span>Y<span class="k3">&amp;</span><span class="n">15</span><span class="k2">)</span><span class="k2">:</span><span class="n">4</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>j<span class="k3">&amp;</span><span class="k3">&amp;</span>X<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>w<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>x</td></tr><tr><td class="number">13</td><td><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&lt;</span><span class="k3">=</span>X<span class="k3">+</span>w<span class="k2">[</span>j<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>Y&gt;<span class="k3">=</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">-</span>h<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span><span class="k3">=</span>Y-h<span class="k2">[</span>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="k3">=</span><span class="n">1</span><span class="k2">;</span>d<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>j<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>u<span class="k2">)</span>f<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></td></tr><tr><td class="number">14</td><td>KEY_LEFT<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><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>d<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_DOWN<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">50</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">99</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><span class="k3">!</span>y<span class="k2">[</span>i</td></tr><tr><td class="number">15</td><td><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="n">2</span><span class="k3">*</span><span class="k2">(</span>x<span class="k2">[</span>j<span class="k2">]</span><span class="k3">/</span><span class="n">2</span><span class="k2">)</span><span class="k3">+</span><span class="n">10</span><span class="k2">;</span>y<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>y<span class="k2">[</span>j<span class="k2">]</span><span class="k2">;</span>h<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">60</span><span class="k2">;</span><span class="k1">break</span><span class="k2">;</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">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="k3">=</span>w<span class="k2">[</span>j<span class="k2">]</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>R<span class="k2">(</span><span class="n">0</span>,</td></tr><tr><td class="number">16</td><td>X<span class="k3">+</span>i<span class="k3">+</span>d,Y<span class="k3">+</span><span class="k2">(</span><span class="k2">(</span>i<span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span>?f:0<span class="k2">)</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="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>f&gt;0<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>j<span class="k2">)</span><span class="k2">{</span>R<span class="k2">(</span><span class="n">1</span>,X,<span class="n">240</span><span class="k3">+</span>Y,w<span class="k2">[</span>j<span class="k2">]</span>,h<span class="k2">[</span>j<span class="k2">]</span>,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span>y<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">17</td><td><span class="k1">else</span> u<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>f<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><span class="k3">!</span><span class="k2">(</span>i<span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span>d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>x<span class="k2">[</span>j<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>d<span class="k2">;</span>y<span class="k2">[</span>j<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>f<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>y<span class="k2">[</span>j<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>R<span class="k2">(</span><span class="n">1</span>,X,Y,<span class="n">1</span>,<span class="n">0</span>,<span class="n">9</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span></td></tr><tr><td class="number">18</td><td>R<span class="k2">(</span><span class="n">0</span>,X,Y<span class="k3">+</span><span class="n">1</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>r<span class="k3">=</span><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_637.html" target="_blank">rand</a><span class="k2">(</span><span class="k2">)</span><span class="k3">&amp;</span><span class="n">1</span><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="k1">if</span><span class="k2">(</span>R<span class="k2">(</span><span class="n">0</span>,X<span class="k3">+</span>r,Y,<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="k1">if</span><span class="k2">(</span>R<span class="k2">(</span><span class="n">0</span>,X-r,Y,<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>h</td></tr><tr><td class="number">19</td><td><span class="k2">[</span>j<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> x<span class="k2">[</span>j<span class="k2">]</span><span class="k3">-</span><span class="k3">=</span>r<span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> x<span class="k2">[</span>j<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>r<span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>y<span class="k2">[</span>j<span class="k2">]</span><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>h<span class="k2">[</span>j<span class="k2">]</span><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="k3">-</span><span class="k3">-</span>h<span class="k2">[</span>j<span class="k2">]</span><span class="k2">)</span>y<span class="k2">[</span>j<span class="k2">]</span><span class="k3">=</span>R<span class="k2">(</span><span class="n">1</span>,X,Y<span class="k3">+</span></td></tr><tr><td class="number">20</td><td><span class="n">240</span>,<span class="n">1</span>,<span class="n">0</span>,<span class="n">11</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">320</span><span class="k2">;</span>i<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><span class="k3">!</span>R<span class="k2">(</span><span class="n">0</span>,i,<span class="n">238</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="k1">break</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>i<span class="k3">=</span><span class="k3">=</span><span class="n">320</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>buf</td></tr><tr><td class="number">21</td><td>,buf,<span class="n">0</span>,<span class="n">240</span>,<span class="n">0</span>,<span class="n">241</span>,<span class="n">320</span>,<span class="n">238</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>y<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">240</span><span class="k2">)</span>o<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>T<span class="k2">(</span><span class="n">10</span>,<span class="n">7</span>,<span class="s">"%i SEC"</span>,<span class="n">120</span><span class="k3">-</span>t<span class="k3">/</span><span class="n">60</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>t<span class="k3">=</span><span class="k3">=</span><span class="n">7200</span><span class="k2">)</span></td></tr><tr><td class="number">22</td><td><span class="k2">{</span>l<span class="k3">+</span><span class="k3">+</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">11</span><span class="k2">)</span><span class="k2">{</span>z<span class="k3">=</span>o<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">goto</span> A<span class="k2">;</span><span class="k2">}</span>R:if<span class="k2">(</span>z<span class="k2">)</span>T<span class="k2">(</span><span class="n">40</span>,<span class="n">13</span>,<span class="s">"YOU WIN"</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">else</span> T<span class="k2">(</span><span class="n">1</span>,<span class="n">15</span>,</td></tr><tr><td class="number">23</td><td><span class="s">"WAVE %i/10"</span>,l<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>o<span class="k2">)</span>T<span class="k2">(</span><span class="n">110</span>,<span class="n">12</span>,<span class="s">"GAME OVER"</span>,<span class="n">0</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>T<span class="k2">(</span><span class="n">80</span>,<span class="n">11</span>,<span class="s">"ICE JUNK"</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>s<span class="k3">|</span></td></tr><tr><td class="number">24</td><td>o<span class="k2">)</span>T<span class="k2">(</span><span class="n">160</span>,<span class="n">10</span>,<span class="s">"PRESS ESC KEY"</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>buf,<a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">320</span>,<span class="n">240</span><span class="k2">)</span><span class="k2">;</span>ot<span class="k3">=</span>t<span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>t<span class="k3">=</span><span class="k3">=</span>ot</td></tr><tr><td class="number">25</td><td><span class="k2">)</span>yield_timeslice<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="k3">|</span>o<span class="k2">)</span><span class="k2">{</span>s<span class="k3">=</span>o<span class="k2">;</span>o<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">goto</span> A<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">/*ICE JUNK*/</span></td></tr></tbody></table></div></div><p>

And here&#39;s my breakout clone from the 20 line thread, which also qualifies here, and compiles without warnings and also gcc &lt; 3.x:
</p><div class="source-code snippet"><div class="inner"><pre><span class="p">#include &lt;allegro.h&gt;</span>
<span class="k1">volatile</span> <span class="k1">int</span> i,t<span class="k3">=</span><span class="n">0</span>,b<span class="k3">=</span><span class="n">320</span>,f<span class="k3">=</span><span class="n">0</span>,p<span class="k2">[</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">0</span>,<span class="n">160</span>,<span class="n">320</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">0</span>,<span class="k3">-</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="k2">}</span><span class="k2">;</span><span class="k1">void</span> timer<span class="k2">(</span><span class="k1">void</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">int</span> main<span class="k2">(</span><span class="k1">void</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.allegro.cc/manual/allegro_init" target="_blank"><span class="a">allegro_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><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,<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="k3">|</span><span class="k3">|</span><a href="http://www.allegro.cc/manual/install_timer" target="_blank"><span class="a">install_timer</span></a><span class="k2">(</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><a href="http://www.allegro.cc/manual/install_int_ex" target="_blank"><span class="a">install_int_ex</span></a><span class="k2">(</span>timer,BPS_TO_TIMER<span class="k2">(</span><span class="n">100</span><span class="k2">)</span><span class="k2">)</span><span class="k3">|</span><span class="k3">|</span><span class="k3">!</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="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><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">480</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/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="k2">(</span>i%<span class="n">40</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">40</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span>,<span class="k2">(</span>i%<span class="n">40</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span><span class="k3">+</span>
<span class="n">14</span>,<span class="k2">(</span>i<span class="k3">/</span><span class="n">40</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span><span class="k3">+</span><span class="n">14</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">200</span>,<span class="n">200</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/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">4000</span><span class="k2">)</span><span class="k2">;</span>t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>p<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">&lt;</span><span class="n">400</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>f<span class="k3">&lt;</span>t<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">6</span><span class="k2">;</span>i<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>i<span class="k3">!</span><span class="k3">=</span><span class="n">2</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,p<span class="k2">[</span><span class="n">2</span><span class="k2">]</span>,p<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,<span class="n">4</span>,i?<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">100</span>,<span class="n">255</span><span class="k2">)</span><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>i
<span class="k3">&lt;</span><span class="n">4</span><span class="k2">)</span>p<span class="k2">[</span>i<span class="k3">+</span><span class="k3">!</span>i<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>d<span class="k2">[</span>i<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>i<span class="k3">&lt;</span><span class="n">4</span><span class="k3">&amp;</span><span class="k3">&amp;</span><a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,p<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">+</span>d<span class="k3">&lt;</span>i&gt;<span class="k3">*</span><span class="n">5</span>,p<span class="k2">[</span><span class="n">1</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="k3">*</span><span class="n">5</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="k2">(</span>p<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">+</span>d<span class="k3">&lt;</span>i&gt;<span class="k3">*</span><span class="n">5</span><span class="k2">)</span><span class="k3">&amp;</span>~<span class="n">15</span>,<span class="k2">(</span>p<span class="k2">[</span><span class="n">1</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="k3">*</span><span class="n">5</span><span class="k2">)</span><span class="k3">&amp;</span>~<span class="n">15</span>,<span class="k2">(</span>p<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">+</span>d<span class="k3">&lt;</span>i&gt;<span class="k3">*</span><span class="n">5</span><span class="k2">)</span><span class="k3">|</span><span class="n">15</span>,<span class="k2">(</span>p<span class="k2">[</span><span class="n">1</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="k3">*</span><span class="n">5</span><span class="k2">)</span><span class="k3">|</span>
<span class="n">15</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>d<span class="k2">[</span>i<span class="k3">+</span><span class="k3">!</span>i<span class="k2">]</span><span class="k3">=</span><span class="k3">-</span>d<span class="k2">[</span>i<span class="k3">+</span><span class="k3">!</span>i<span class="k2">]</span><span class="k2">;</span>p<span class="k2">[</span>i<span class="k3">+</span><span class="k3">!</span>i<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>d<span class="k2">[</span>i<span class="k3">+</span><span class="k3">!</span>i<span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,b-12,<span class="n">320</span>,b<span class="k3">+</span><span class="n">12</span>,<span class="n">327</span>
,i<span class="k3">=</span><span class="k3">=</span><span class="n">2</span>?<span class="n">0</span><span class="k2">:</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">0</span>,b<span class="k3">/</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>i<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span>b<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><span class="k2">}</span>f<span class="k3">+</span><span class="k3">+</span><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><span class="k2">;</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Elias)</author>
		<pubDate>Tue, 03 Feb 2004 01:45:09 +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><span class="k1">volatile</span> <span class="k1">int</span> sc<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">int</span> gl<span class="k3">=</span><span class="n">0</span>,dx,dy,dd,rl,points<span class="k3">=</span><span class="n">0</span>,lives<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/fixed" target="_blank"><span class="a">fixed</span></a> x,y,ang<span class="k2">;</span><span class="k1">void</span> </td></tr><tr><td class="number">3</td><td>sc_add<span class="k2">(</span><span class="k2">)</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">int</span> re<span class="k2">(</span><span class="k1">int</span> m,<span class="k1">int</span> a<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>%<span class="k2">(</span>a<span class="k3">+</span><span class="n">1</span><span class="k3">-</span>m<span class="k2">)</span><span class="k3">+</span>m<span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> iv<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>rl<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k3">=</span></td></tr><tr><td class="number">4</td><td><a href="http://www.allegro.cc/manual/itofix" target="_blank"><span class="a">itofix</span></a><span class="k2">(</span>re<span class="k2">(</span><span class="n">10</span>,<span class="n">310</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>y<span class="k3">=</span><a href="http://www.allegro.cc/manual/itofix" target="_blank"><span class="a">itofix</span></a><span class="k2">(</span>re<span class="k2">(</span><span class="n">10</span>,<span class="n">230</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>dx<span class="k3">=</span>re<span class="k2">(</span><span class="n">20</span>,<span class="n">300</span><span class="k2">)</span><span class="k2">;</span>dy<span class="k3">=</span>re<span class="k2">(</span><span class="n">20</span>,<span class="n">180</span><span class="k2">)</span><span class="k2">;</span>dd<span class="k3">=</span>re<span class="k2">(</span><span class="n">5</span>,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">5</td><td>ang<span class="k3">=</span><a href="http://www.allegro.cc/manual/itofix" target="_blank"><span class="a">itofix</span></a><span class="k2">(</span>re<span class="k2">(</span><span class="n">0</span>,<span class="n">255</span><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><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>d<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">6</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/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_AUTODETECT,<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.allegro.cc/manual/install_int_ex" target="_blank"><span class="a">install_int_ex</span></a><span class="k2">(</span>sc_add,</td></tr><tr><td class="number">7</td><td>BPS_TO_TIMER<span class="k2">(</span><span class="n">60</span><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><span class="n">320</span>,<span class="n">240</span><span class="k2">)</span><span class="k2">;</span>ang<span class="k3">=</span><a href="http://www.allegro.cc/manual/itofix" target="_blank"><span class="a">itofix</span></a><span class="k2">(</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>start:</td></tr><tr><td class="number">8</td><td>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="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_ENTER<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_ESC<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/fade_out" target="_blank"><span class="a">fade_out</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/allegro_exit" target="_blank"><span class="a">allegro_exit</span></a><span class="k2">(</span></td></tr><tr><td class="number">9</td><td><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><a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>d,<span class="n">191</span><span class="k2">)</span><span class="k2">;</span>textprintf_centre<span class="k2">(</span>d,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">162</span>,<span class="n">122</span>,<span class="n">16</span>,<span class="s">"MiniGolf"</span><span class="k2">)</span></td></tr><tr><td class="number">10</td><td><span class="k2">;</span>textprintf_centre<span class="k2">(</span>d,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">160</span>,<span class="n">120</span>,<span class="n">255</span>,<span class="s">"MiniGolf"</span><span class="k2">)</span><span class="k2">;</span>textprintf_right<span class="k2">(</span>d,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">320</span>,</td></tr><tr><td class="number">11</td><td><span class="n">230</span>,<span class="n">255</span>,<span class="s">"Hiscore: %d"</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">"hs"</span>,<span class="s">"s"</span>,<span class="n">20</span><span class="k2">)</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,d,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>iv</td></tr><tr><td class="number">12</td><td><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>gl<span class="k3">=</span><span class="n">0</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><span class="k1">while</span><span class="k2">(</span>sc&gt;0<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><span class="k1">goto</span> start<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>rl<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">13</td><td>KEY_LEFT<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_RSHIFT<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>ang-<span class="k3">=</span><a href="http://www.allegro.cc/manual/ftofix" target="_blank"><span class="a">ftofix</span></a><span class="k2">(</span><span class="n">0</span>.<span class="n">25</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>ang-<span class="k3">=</span><a href="http://www.allegro.cc/manual/itofix" target="_blank"><span class="a">itofix</span></a><span class="k2">(</span><span class="n">1</span>.<span class="n">5</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></td></tr><tr><td class="number">14</td><td><span class="k2">[</span>KEY_RIGHT<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_RSHIFT<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>ang<span class="k3">+</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/ftofix" target="_blank"><span class="a">ftofix</span></a><span class="k2">(</span><span class="n">0</span>.<span class="n">25</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>ang<span class="k3">+</span><span class="k3">=</span><a href="http://www.allegro.cc/manual/itofix" target="_blank"><span class="a">itofix</span></a><span class="k2">(</span><span class="n">1</span>.<span class="n">5</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></td></tr><tr><td class="number">15</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>rl<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>x<span class="k3">+</span><span class="k3">=</span>fmul<span class="k2">(</span><a href="http://www.allegro.cc/manual/itofix" target="_blank"><span class="a">itofix</span></a><span class="k2">(</span><span class="n">2</span><span class="k2">)</span>,fcos<span class="k2">(</span>ang<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>fmul<span class="k2">(</span><a href="http://www.allegro.cc/manual/itofix" target="_blank"><span class="a">itofix</span></a><span class="k2">(</span><span class="n">2</span><span class="k2">)</span>,fsin<span class="k2">(</span></td></tr><tr><td class="number">16</td><td>ang<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/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>x<span class="k2">)</span><span class="k3">&gt;</span><span class="k3">=</span>dx-dd<span class="k3">/</span><span class="n">2</span><span class="k3">&amp;</span><span class="k3">&amp;</span><a href="http://www.allegro.cc/manual/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>x<span class="k2">)</span><span class="k3">&lt;</span><span class="k3">=</span>dx<span class="k3">+</span>dd<span class="k3">/</span><span class="n">2</span><span class="k3">&amp;</span><span class="k3">&amp;</span><a href="http://www.allegro.cc/manual/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>y<span class="k2">)</span><span class="k3">&gt;</span><span class="k3">=</span>dy-dd<span class="k3">/</span><span class="n">2</span><span class="k3">&amp;</span><span class="k3">&amp;</span><a href="http://www.allegro.cc/manual/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>y<span class="k2">)</span><span class="k3">&lt;</span><span class="k3">=</span></td></tr><tr><td class="number">17</td><td>dy<span class="k3">+</span>dd<span class="k3">/</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span>iv<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>points<span class="k3">+</span><span class="k3">=</span><span class="n">10</span><span class="k2">;</span>gl<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/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>x<span class="k2">)</span><span class="k3">&lt;</span><span class="k3">-</span><span class="n">5</span><span class="k3">|</span><span class="k3">|</span><a href="http://www.allegro.cc/manual/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>y<span class="k2">)</span><span class="k3">&lt;</span><span class="k3">-</span><span class="n">5</span><span class="k3">|</span><span class="k3">|</span><a href="http://www.allegro.cc/manual/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>x<span class="k2">)</span><span class="k3">&gt;</span><span class="n">325</span><span class="k3">|</span><span class="k3">|</span></td></tr><tr><td class="number">18</td><td><a href="http://www.allegro.cc/manual/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>y<span class="k2">)</span><span class="k3">&gt;</span><span class="n">245</span><span class="k2">)</span><span class="k2">{</span>iv<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>lives--<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>lives<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>points&gt;get_config_int<span class="k2">(</span><span class="s">"hs"</span>,<span class="s">"s"</span>,<span class="n">0</span><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.allegro.cc/manual/set_config_int" target="_blank"><span class="a">set_config_int</span></a><span class="k2">(</span><span class="s">"hs"</span>,<span class="s">"s"</span>,points<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>lives<span class="k3">=</span><span class="n">2</span><span class="k2">;</span>points<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">goto</span> start<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>gl<span class="k3">=</span><span class="k3">=</span><span class="n">10</span><span class="k2">)</span><span class="k2">{</span>lives</td></tr><tr><td class="number">20</td><td><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>gl<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>sc--<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>d,<span class="n">191</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>d,dx,dy,dd,<span class="n">16</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>rl<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>d,</td></tr><tr><td class="number">21</td><td><a href="http://www.allegro.cc/manual/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>x<span class="k2">)</span>,<a href="http://www.allegro.cc/manual/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>y<span class="k2">)</span>,<a href="http://www.allegro.cc/manual/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>x<span class="k3">+</span><span class="n">30</span><span class="k3">*</span>fcos<span class="k2">(</span>ang<span class="k2">)</span><span class="k2">)</span>,<a href="http://www.allegro.cc/manual/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>y<span class="k3">+</span><span class="n">30</span><span class="k3">*</span>fsin<span class="k2">(</span>ang<span class="k2">)</span><span class="k2">)</span>,<span class="n">104</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</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>d,<a href="http://www.allegro.cc/manual/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>x<span class="k2">)</span>,<a href="http://www.allegro.cc/manual/fixtoi" target="_blank"><span class="a">fixtoi</span></a><span class="k2">(</span>y<span class="k2">)</span>,<span class="n">4</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>d,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">0</span>,<span class="n">230</span>,<span class="n">255</span>,</td></tr><tr><td class="number">23</td><td><span class="s">"Lives: %d Points: %d"</span>,lives,points<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>,d,<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><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>
MiniGolf! Well, sorta <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (tareco)</author>
		<pubDate>Wed, 04 Feb 2004 06:26:25 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Can I use external files (samples, MIDIs, DAT...)?</p><p>I&#39;m writing one, may be I finish it this night.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Niunio)</author>
		<pubDate>Wed, 04 Feb 2004 21:40:28 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>You&#39;re all crazy...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (james_lohr)</author>
		<pubDate>Wed, 04 Feb 2004 23:30:04 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><a href="http://www.allegro.cc/forums/view_thread.php?_id=237297">&quot;An Allegro Game in 20 lines of code - Possible?&quot;</a>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Rash)</author>
		<pubDate>Thu, 05 Feb 2004 00:28:18 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><b>grumbles</b>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (SonShadowCat)</author>
		<pubDate>Thu, 05 Feb 2004 05:22:16 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I worked for a whole trying to squeeze my code into 80x25. Thanks to X-Viila, Marcello, and many others on #allegro I got it sized right.</p><p>I worked in MSVC, so I&#39;m not sure if this compiles under GCC, although it should with minimal change.<br />The MSVC project was a Win32 Console App, using the required AGL libraries in the linking and USE_CONSOLE defined in preproccessors.</p><p>This is a simple game. Arrow keys move you around in the random map. You have to collect the yellow thingies. The Blue Block Ghosts will try to eat you, so you have to avoid those. If they do touch you, you lose all your points. Ghosts can go through walls and teleport at edges so becareful. Enjoy! Also, if you can&#39;t move at the beginning, restart the program(random maps).</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;alleggl.h&gt;</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;math.h&gt;</span></td></tr><tr><td class="number">3</td><td><span class="p">#define I(a,b) for(b=0;b&lt;a;b++)</span></td></tr><tr><td class="number">4</td><td><span class="p">#define R(a,b) V(D&lt;i&gt;.x+a,b,-(D&lt;i&gt;.y+P));</span></td></tr><tr><td class="number">5</td><td><span class="k1">typedef</span> <span class="k1">int</span> N<span class="k2">;</span><span class="k1">void</span> A<span class="k2">(</span>N a,N b<span class="k2">)</span><span class="k2">{</span>allegro_gl_set<span class="k2">(</span>a,b<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">float</span> a,<span class="k1">float</span> b,<span class="k1">float</span></td></tr><tr><td class="number">6</td><td>c<span class="k2">)</span><span class="k2">{</span>glVertex3f<span class="k2">(</span>a,b,c<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">struct</span><span class="k2">{</span><span class="k1">unsigned</span> x,y<span class="k2">;</span><span class="k2">}</span>D<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">;</span>N M<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>,C<span class="k3">=</span><span class="n">1200</span>,S<span class="k3">=</span><span class="n">0</span>,i,v<span class="k3">=</span><span class="n">0</span>,y,r</td></tr><tr><td class="number">7</td><td><span class="k2">;</span><span class="k1">float</span> X<span class="k3">=</span><span class="n">5</span>,Z<span class="k3">=</span><span class="k3">-</span><span class="n">5</span>,Y,n,l,O,P<span class="k3">=</span>.<span class="n">5</span>,Q<span class="k3">=</span>.<span class="n">75</span><span class="k2">;</span><span class="k1">volatile</span> N T<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">void</span> F<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>all\</td></tr><tr><td class="number">8</td><td>egro_init<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>install_allegro_gl<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<span class="k2">(</span><span class="n">1024</span>,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>A<span class="k2">(</span><span class="n">131072</span>,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>A<span class="k2">(</span><span class="k3">-</span><span class="n">1</span>,</td></tr><tr><td class="number">9</td><td><span class="n">140320</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_OPENGL_WINDOWED,<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>glEnable<span class="k2">(</span><span class="n">2929</span><span class="k2">)</span><span class="k2">;</span>glMatrixMo\</td></tr><tr><td class="number">10</td><td>de<span class="k2">(</span><span class="n">5889</span><span class="k2">)</span><span class="k2">;</span>glFrustum<span class="k2">(</span><span class="k3">-</span>.<span class="n">09</span>,.<span class="n">09</span>,<span class="k3">-</span>.<span class="n">07</span>,.<span class="n">07</span>,.<span class="n">1</span>,<span class="n">300</span><span class="k2">)</span><span class="k2">;</span>glMatrixMode<span class="k2">(</span><span class="n">5888</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>F,<span class="n">17</span></td></tr><tr><td class="number">11</td><td><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="k2">(</span><span class="n">100</span>,i<span class="k2">)</span>M<span class="k2">[</span>i%<span class="n">10</span><span class="k2">]</span><span class="k2">[</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>I<span class="k2">(</span><span class="n">85</span>,i<span class="k2">)</span>M<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><span class="n">0</span><span class="k2">;</span>I<span class="k2">(</span><span class="n">3</span>,</td></tr><tr><td class="number">12</td><td>i<span class="k2">)</span>D<span class="k3">&lt;</span>i&gt;.x<span class="k3">=</span>D<span class="k3">&lt;</span>i&gt;.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">10</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<span class="k2">)</span><span class="k2">{</span>v-<span class="k3">=</span><span class="k3">!</span><span class="k3">!</span>v<span class="k2">;</span>T--<span class="k2">;</span>C<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>n<span class="k3">=</span>X<span class="k2">;</span>l<span class="k3">=</span>Z<span class="k2">;</span>Y-<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">13</td><td><span class="k2">[</span><span class="n">83</span><span class="k2">]</span><span class="k3">*</span><span class="n">3</span><span class="k2">;</span>Y<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="k3">*</span><span class="n">3</span><span class="k2">;</span>X-<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>O<span class="k3">=</span>Y<span class="k3">*</span>.<span class="n">0174</span><span class="k2">)</span><span class="k3">*</span>.<span class="n">05</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="k2">;</span>Z<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>O<span class="k2">)</span><span class="k3">*</span>.<span class="n">05</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="k2">;</span>X<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>O</td></tr><tr><td class="number">14</td><td><span class="k2">)</span><span class="k3">*</span>.<span class="n">05</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>Z-<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>O<span class="k2">)</span><span class="k3">*</span>.<span class="n">05</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="k1">if</span><span class="k2">(</span>M<span class="k2">[</span><span class="k2">(</span>N<span class="k2">)</span>X<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>N<span class="k2">)</span><span class="k3">-</span>Z<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>X<span class="k3">=</span>n<span class="k2">;</span>Z<span class="k3">=</span>l<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>M<span class="k2">[</span><span class="k2">(</span>N<span class="k2">)</span>X<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>N</td></tr><tr><td class="number">15</td><td><span class="k2">)</span><span class="k3">-</span>Z<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>S<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>M<span class="k2">[</span><span class="k2">(</span>N<span class="k2">)</span>X<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>N<span class="k2">)</span><span class="k3">-</span>Z<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>C&gt;1200<span class="k2">)</span><span class="k2">{</span>I<span class="k2">(</span><span class="n">100</span>,i<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>M<span class="k2">[</span>r<span class="k3">=</span>i%<span class="n">10</span><span class="k2">]</span><span class="k2">[</span>i<span class="k3">/</span><span class="n">10</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">1</span><span class="k2">)</span>M<span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>i<span class="k3">/</span></td></tr><tr><td class="number">16</td><td><span class="n">10</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><span class="k3">!</span>M<span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>i<span class="k3">/</span><span class="n">10</span><span class="k2">]</span><span class="k2">)</span>M<span class="k2">[</span>r<span class="k2">]</span><span class="k2">[</span>i<span class="k3">/</span><span class="n">10</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="k3">&amp;</span><span class="n">1</span><span class="k3">+</span><span class="n">1</span><span class="k2">;</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="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k2">(</span>C%<span class="n">60</span><span class="k2">)</span><span class="k2">)</span>I<span class="k2">(</span><span class="n">3</span>,i<span class="k2">)</span><span class="k2">{</span>D<span class="k3">&lt;</span>i&gt;.x<span class="k3">=</span><span class="k2">(</span>D<span class="k3">&lt;</span>i&gt;.</td></tr><tr><td class="number">17</td><td>x<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">3</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span>%<span class="n">10</span><span class="k2">;</span>D<span class="k3">&lt;</span>i&gt;.y<span class="k3">=</span><span class="k2">(</span>D<span class="k3">&lt;</span>i&gt;.y<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">3</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span>%<span class="n">10</span><span class="k2">;</span><span class="k2">}</span>I<span class="k2">(</span><span class="n">3</span>,i<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>D<span class="k3">&lt;</span>i&gt;.x<span class="k3">=</span><span class="k3">=</span><span class="k2">(</span>N<span class="k2">)</span>X<span class="k3">&amp;</span><span class="k3">&amp;</span>D<span class="k3">&lt;</span>i&gt;</td></tr><tr><td class="number">18</td><td>.y<span class="k3">=</span><span class="k3">=</span><span class="k3">-</span><span class="k2">(</span>N<span class="k2">)</span>Z<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>v<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span><span class="s">"GHOST! Score: %i"</span>,S<span class="k2">)</span><span class="k2">;</span>S<span class="k3">=</span>T<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>v<span class="k3">=</span><span class="n">120</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span>glLoadIdent\</td></tr><tr><td class="number">19</td><td>ity<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>glClear<span class="k2">(</span><span class="n">16640</span><span class="k2">)</span><span class="k2">;</span>glRotatef<span class="k2">(</span>Y,<span class="n">0</span>,<span class="n">1</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>glTranslatef<span class="k2">(</span><span class="k3">-</span>X,<span class="k3">-</span>P,<span class="k3">-</span>Z<span class="k2">)</span><span class="k2">;</span>glBegin<span class="k2">(</span><span class="n">7</span><span class="k2">)</span><span class="k2">;</span>I<span class="k2">(</span><span class="n">10</span>,y</td></tr><tr><td class="number">20</td><td><span class="k2">)</span>I<span class="k2">(</span><span class="n">10</span>,i<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>y<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>glColor3f<span class="k2">(</span>P,P,P<span class="k2">)</span><span class="k2">;</span>y<span class="k3">=</span><span class="k3">-</span>y-1<span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">0</span>,y<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">1</span>,y<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i,<span class="n">1</span>,y<span class="k2">)</span><span class="k2">;</span>V</td></tr><tr><td class="number">21</td><td><span class="k2">(</span>i,<span class="n">0</span>,y<span class="k2">)</span><span class="k2">;</span>y<span class="k3">=</span>y<span class="k3">+</span><span class="n">1</span><span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">0</span>,y<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">1</span>,y<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i,<span class="n">1</span>,y<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i,<span class="n">0</span>,y<span class="k2">)</span><span class="k2">;</span>y<span class="k3">=</span><span class="k3">-</span>y<span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">0</span>,<span class="k3">-</span>y-1<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">1</span></td></tr><tr><td class="number">22</td><td>,<span class="k3">-</span>y-1<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">1</span>,<span class="k3">-</span>y<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">0</span>,<span class="k3">-</span>y<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i,<span class="n">0</span>,<span class="k3">-</span>y-1<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i,<span class="n">1</span>,<span class="k3">-</span>y-1<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i,<span class="n">1</span>,<span class="k3">-</span>y<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i,<span class="n">0</span>,<span class="k3">-</span>y<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>M</td></tr><tr><td class="number">23</td><td><span class="k3">&lt;</span>i&gt;<span class="k2">[</span>y<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>glColor3f<span class="k2">(</span>P,P,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span>P,Q,<span class="k3">-</span>y-P<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span>Q,O<span class="k3">=</span>.<span class="n">25</span>,<span class="k3">-</span>y-Q<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span>O,O,<span class="k3">-</span>y-O<span class="k2">)</span><span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span>Q,</td></tr><tr><td class="number">24</td><td>O,<span class="k3">-</span>y-O<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>I<span class="k2">(</span><span class="n">3</span>,i<span class="k2">)</span><span class="k2">{</span>glColor3f<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>R<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span><span class="k2">)</span>R<span class="k2">(</span>O,<span class="n">2</span><span class="k2">)</span>R<span class="k2">(</span>Q,<span class="n">2</span><span class="k2">)</span>R<span class="k2">(</span><span class="n">1</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">}</span>glEnd<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>allegro_gl_f\</td></tr><tr><td class="number">25</td><td>lip<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>
http://www.cljy.com/~billy/80_25_chase_pic.PNG<br />EDIT_FINAL: Updated entire post.<br />EDIT: Code updated to latest version.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Thu, 05 Feb 2004 08:33:52 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Well, I have just finished very similar game, but without enemies and running without AGL on my own ray-trace engine. I wanted to add some enemies (red circles) and player ability to shoot them (using smaller green circles for instance), but it won`t fit in 80x25. As a result, circle particle system is incorporated into engine and used for displaying coins.</p><p>Your task here is to collect all gold coins left in the dungeon of the castle Bartenstein and avoid pits. Use arrow keys to move and ESC to exit. You are equipped with gold-coin-counter(TM) and a compass. The game is quite hard to beat, so good luck! <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /><br />(there <u>really</u> are 150 coins and all of them are accessible, really <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> )</p><p>The code was developed under DJGPP and it generates a bunch of double-&gt;int conversion warnings, which can make compilation under other compilers harder. If you are forced to make some modifications in the source, make sure to replace the modified source with the original one before running the game, because otherwise some of the coins can be unaccessible (the game uses it`s source code, which is also prepared to act as a map).</p><p>btw. this castle really existed in my home city, but I don`t think there were gold coins, pits and fancy-painted floors. <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;/*      Bartenstein 3D! by Krzysztof Kluczek (c) 2004     */</span></td></tr><tr><td class="number">2</td><td><span class="p">#include  &lt;math.h&gt;/*--        A complete 3D engine on one 80x25 screen        */</span></td></tr><tr><td class="number">3</td><td><span class="k1">typedef</span>  <span class="k1">int</span> i<span class="k2">;</span>i x,y,n,l,Q<span class="k3">=</span><span class="n">0</span>,j<span class="k2">[</span><span class="n">90</span><span class="k2">]</span><span class="k2">[</span><span class="n">90</span><span class="k2">]</span>,s<span class="k2">;</span><span class="k1">char</span> m<span class="k2">[</span><span class="n">90</span><span class="k2">]</span><span class="k2">[</span><span class="n">90</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="k2">}</span>,<span class="k3">*</span>g<span class="k3">=</span><span class="k2">(</span><span class="k1">char</span><span class="k3">*</span><span class="k2">)</span>m,<span class="k3">*</span>h<span class="k3">=</span>g,<span class="k3">*</span>k<span class="k3">=</span>g</td></tr><tr><td class="number">4</td><td>,<span class="k3">*</span>p<span class="k3">=</span>g<span class="k3">+</span><span class="n">1</span>,c<span class="k2">;</span><span class="k1">float</span> b,u,v,a,d,z<span class="k2">[</span><span class="n">320</span><span class="k2">]</span>,A<span class="k3">=</span><span class="n">0</span>,X<span class="k3">=</span><span class="n">1</span>.<span class="n">5</span>,Y<span class="k3">=</span><span class="n">1</span>.<span class="n">5</span>,q<span class="k2">[</span><span class="n">999</span><span class="k2">]</span><span class="k2">[</span><span class="n">9</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="k2">}</span>,<span class="k3">*</span>t<span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>w<span class="k2">;</span><a href="http://www.allegro.cc/manual/RGB" target="_blank"><span class="a">RGB</span></a> r<span class="k2">;</span></td></tr><tr><td class="number">5</td><td><span class="k1">void</span> cl<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>  d<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_49.html" target="_blank">atan</a><span class="k2">(</span><span class="k2">(</span>x-160<span class="k2">)</span><span class="k3">/</span><span class="n">200</span>.<span class="k2">)</span><span class="k2">;</span>u<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="k3">+</span>d<span class="k2">)</span><span class="k2">;</span>v<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="k3">+</span>d<span class="k2">)</span><span class="k2">;</span>b<span class="k3">=</span><span class="n">50</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>d<span class="k2">)</span><span class="k3">+</span><span class="n">10</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>l<span class="k3">=</span>y<span class="k3">=</span><span class="n">1</span>\</td></tr><tr><td class="number">6</td><td><span class="n">00</span><span class="k2">;</span>y&gt;0<span class="k2">;</span><span class="k2">)</span><span class="k2">{</span>c<span class="k3">=</span>y&gt;9?m<span class="k2">[</span>i<span class="k2">(</span>b<span class="k3">/</span>y<span class="k3">*</span>u<span class="k3">+</span>X<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>b<span class="k3">/</span>y<span class="k3">*</span>v<span class="k3">+</span>Y<span class="k2">)</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span><span class="k3">*</span><span class="k2">(</span>y<span class="k3">&amp;</span>~<span class="n">3</span><span class="k2">)</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span>c<span class="k3">+</span><span class="k3">+</span><span class="k3">&amp;</span><span class="n">7</span>?c<span class="k3">&amp;</span><span class="n">7</span>?<a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>w,x,<span class="n">99</span><span class="k3">+</span>y,<span class="n">99</span><span class="k3">+</span></td></tr><tr><td class="number">7</td><td>l,c<span class="k2">)</span>,<span class="n">0</span><span class="k2">:</span><span class="n">0</span>,<a href="http://www.allegro.cc/manual/putpixel" target="_blank"><span class="a">putpixel</span></a><span class="k2">(</span>w,x,<span class="n">100</span><span class="k3">-</span>y,c<span class="k2">)</span>,<span class="n">0</span><span class="k2">:</span><span class="k2">(</span>z<span class="k2">[</span>x<span class="k2">]</span><span class="k3">=</span>b<span class="k3">/</span>y,<a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>w,x,<span class="n">99</span><span class="k3">+</span>l,<span class="n">100</span><span class="k3">-</span>y,c<span class="k2">)</span>,y<span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>y--<span class="k2">;</span>l<span class="k3">=</span>c<span class="k3">&amp;</span></td></tr><tr><td class="number">8</td><td><span class="n">7</span>?y:l<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">void</span> sq<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>u<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>v<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="k1">for</span><span class="k2">(</span>l<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>l<span class="k3">&lt;</span>Q<span class="k2">;</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>t<span class="k3">=</span>q<span class="k2">[</span>l<span class="k2">]</span>,a<span class="k3">=</span>t<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">-</span>X,b<span class="k3">=</span>t<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">-</span>Y,t<span class="k2">[</span></td></tr><tr><td class="number">9</td><td><span class="n">0</span><span class="k2">]</span><span class="k3">=</span>a<span class="k3">*</span>u<span class="k3">+</span>b<span class="k3">*</span>v,t<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>b<span class="k3">*</span>u-a<span class="k3">*</span>v<span class="k2">;</span>u<span class="k3">=</span><span class="n">1E9</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>v<span class="k3">=</span><span class="n">0</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>Q<span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>a<span class="k3">=</span>q<span class="k2">[</span>x<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,v<span class="k3">&lt;</span>a<span class="k3">&amp;</span><span class="k3">&amp;</span>a<span class="k3">&lt;</span>u?l<span class="k3">=</span></td></tr><tr><td class="number">10</td><td>x,v<span class="k3">=</span>a:0<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>v<span class="k3">&lt;</span>.<span class="n">1</span><span class="k2">)</span><span class="k1">break</span><span class="k2">;</span>u<span class="k3">=</span>v<span class="k2">;</span>t<span class="k3">=</span>q<span class="k2">[</span>l<span class="k2">]</span><span class="k2">;</span>d<span class="k3">=</span><span class="n">160</span><span class="k3">+</span><span class="n">200</span><span class="k3">*</span>t<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">/</span>t<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span>a<span class="k3">=</span><span class="n">16</span><span class="k3">/</span>t<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>n<span class="k3">=</span><span class="k3">-</span>a<span class="k2">;</span>x<span class="k3">=</span>d<span class="k3">+</span>n,n\</td></tr><tr><td class="number">11</td><td><span class="k3">&lt;</span><span class="k3">=</span>a<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>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">320</span><span class="k3">&amp;</span><span class="k3">&amp;</span>z<span class="k2">[</span>x<span class="k2">]</span><span class="k3">&gt;</span>t<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span>.<span class="n">3</span><span class="k2">)</span>y<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_738.html" target="_blank">sqrt</a><span class="k2">(</span>a<span class="k3">*</span>a-n<span class="k3">*</span>n<span class="k2">)</span>,<a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>w,x,<span class="n">100</span><span class="k3">-</span>y,<span class="n">100</span><span class="k3">+</span>y,<span class="n">251</span><span class="k3">-</span><span class="n">8</span></td></tr><tr><td class="number">12</td><td><span class="k3">*</span>i<span class="k2">(</span>t<span class="k2">[</span><span class="n">0</span><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>i cc<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>d<span class="k3">=</span><span class="n">0</span>.<span class="n">4</span><span class="k2">;</span><span class="k1">return</span> m<span class="k2">[</span>i<span class="k2">(</span>X-d<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y-d<span class="k2">)</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>m<span class="k2">[</span>i<span class="k2">(</span>X-d<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y<span class="k3">+</span>d<span class="k2">)</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>m<span class="k2">[</span>i<span class="k2">(</span>X<span class="k3">+</span>d<span class="k2">)</span></td></tr><tr><td class="number">13</td><td><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y-d<span class="k2">)</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>m<span class="k2">[</span>i<span class="k2">(</span>X<span class="k3">+</span>d<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y<span class="k3">+</span>d<span class="k2">)</span><span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> mv<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>X<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>u<span class="k3">=</span>a<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="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>cc<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>X-<span class="k3">=</span>u<span class="k2">;</span>Y<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>v<span class="k3">=</span>a<span class="k3">*</span>s\</td></tr><tr><td class="number">14</td><td>in<span class="k2">(</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="k3">!</span>cc<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>Y-<span class="k3">=</span>v<span class="k2">;</span><span class="k2">}</span>i 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>G\</td></tr><tr><td class="number">15</td><td>FX_VGA,<span class="n">320</span>,<span class="n">200</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>w<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><a href="http://www.allegro.cc/manual/PACKFILE" target="_blank"><span class="a">PACKFILE</span></a> <span class="k3">*</span>f<span class="k3">=</span><a href="http://www.allegro.cc/manual/pack_fopen" target="_blank"><span class="a">pack_fopen</span></a><span class="k2">(</span>__FILE__  ,\</td></tr><tr><td class="number">16</td><td><span class="s">"r"</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/pack_fgets" target="_blank"><span class="a">pack_fgets</span></a><span class="k2">(</span>p<span class="k3">+</span><span class="k3">=</span><span class="n">90</span>,<span class="n">88</span>,f<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/pack_fclose" target="_blank"><span class="a">pack_fclose</span></a><span class="k2">(</span>f<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k2">;</span>g<span class="k3">&lt;</span>h<span class="k3">+</span><span class="n">8100</span><span class="k2">;</span>g<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">(</span><span class="k3">*</span>g<span class="k3">&amp;</span><span class="k3">=</span><span class="n">7</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">2</span>?j</td></tr><tr><td class="number">17</td><td><span class="k2">[</span>i<span class="k2">(</span>q<span class="k2">[</span>Q<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>g-k<span class="k2">)</span><span class="k3">/</span><span class="n">90</span><span class="k3">+</span>.<span class="n">5</span><span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>q<span class="k2">[</span>Q<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><span class="k2">(</span>g-k<span class="k2">)</span>%<span class="n">90</span><span class="k3">+</span>.<span class="n">5</span><span class="k2">)</span><span class="k2">]</span><span class="k3">=</span>Q<span class="k3">+</span><span class="k3">+</span><span class="k2">:</span><span class="n">0</span><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">256</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span>y<span class="k3">/</span><span class="n">4</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td>r.r<span class="k3">=</span>y<span class="k3">&amp;</span><span class="n">1</span>?x:0<span class="k2">;</span>r.g<span class="k3">=</span>y<span class="k3">&amp;</span><span class="n">2</span>?x:0<span class="k2">;</span>r.b<span class="k3">=</span>y<span class="k3">&amp;</span><span class="n">4</span>?x:0<span class="k2">;</span><a href="http://www.allegro.cc/manual/set_color" target="_blank"><span class="a">set_color</span></a><span class="k2">(</span>y,<span class="k3">&amp;</span>r<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span> s<span class="k3">=</span>Q<span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>s<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></td></tr><tr><td class="number">19</td><td><span class="k2">)</span><span class="k2">{</span>g<span class="k3">=</span>m<span class="k2">[</span>i<span class="k2">(</span>X<span class="k2">)</span><span class="k2">]</span><span class="k3">+</span>i<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>g<span class="k3">=</span><span class="k3">=</span><span class="n">7</span><span class="k2">)</span><span class="k2">{</span><span class="k1">for</span><span class="k2">(</span>y<span class="k3">=</span><span class="n">198</span><span class="k2">;</span>y<span class="k3">+</span><span class="n">1</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><span class="k2">(</span>y%<span class="n">30</span><span class="k2">)</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,sc\</td></tr><tr><td class="number">20</td><td>reen,<span class="n">0</span>,y<span class="k3">+</span><span class="n">1</span>,<span class="n">0</span>,y,<span class="n">320</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>y<span class="k3">&lt;</span><span class="n">50</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</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><span class="k3">*</span>g<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span><span class="k3">*</span>g<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>s--<span class="k2">;</span>q<span class="k2">[</span>j<span class="k2">[</span>i<span class="k2">(</span>X<span class="k2">)</span><span class="k2">]</span></td></tr><tr><td class="number">21</td><td><span class="k2">[</span>i<span class="k2">(</span>Y<span class="k2">)</span><span class="k2">]</span><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">9</span><span class="k2">;</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">320</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>cl<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>sq<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>a<span class="k3">=</span><span class="n">0</span>.<span class="n">07</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>A-<span class="k3">=</span>a<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">22</td><td>KEY_RIGHT<span class="k2">]</span><span class="k2">)</span>A<span class="k3">+</span><span class="k3">=</span>a<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>mv<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_DOWN<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>a<span class="k3">=</span><span class="k3">-</span>a<span class="k2">;</span>mv<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>u<span class="k3">=</span><span class="n">300</span><span class="k2">;</span>v<span class="k3">=</span><span class="n">20</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a></td></tr><tr><td class="number">23</td><td><span class="k2">(</span>w,u,v,u<span class="k3">+</span><span class="n">9</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>,v<span class="k3">+</span><span class="n">9</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="n">254</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>w,u,v,<span class="n">255</span><span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>w,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">255</span>,</td></tr><tr><td class="number">24</td><td><span class="s">"%d"</span>,s<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><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>w,<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="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>textout<span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,fo\</td></tr><tr><td class="number">25</td><td>nt,s?<span class="s">"Game Over"</span><span class="k2">:</span><span class="s">"You win!"</span>,<span class="n">124</span>,<span class="n">96</span>,<span class="n">255</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><span class="k2">;</span><span class="c">/**/</span></td></tr></tbody></table></div></div><p>

I think somebody better in english than me should write a news on Allegro.cc about this contest - some people may not visit the off-topic forum but may be interested in it.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Thu, 05 Feb 2004 09:41:48 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Krzysztof: Unfortunetly it crashed under linux.. maybe youve got a memory bug lurking in there somewhere?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Thomas Fjellstrom)</author>
		<pubDate>Thu, 05 Feb 2004 10:06:10 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Thanks for the info. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> I`ll check this tomorrow. It`s 5:26 am in my time zone now. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /></p><p>btw. Does entries with unclean exit count? Mine have one destroy_bitmap() missed. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Thu, 05 Feb 2004 10:30:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Here is will&#39;s code in 25 lines...</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;alleggl.h&gt;</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;math.h&gt;</span></td></tr><tr><td class="number">3</td><td><span class="p">#define I(a) for(i=0;i&lt;a;i++)</span></td></tr><tr><td class="number">4</td><td><span class="p">#define A(a,b) allegro_gl_set((a),(b));</span></td></tr><tr><td class="number">5</td><td><span class="p">#define V(a,b,c) glVertex3f((a),(b),(c));</span></td></tr><tr><td class="number">6</td><td><span class="p">#define R(a,b) V(D&lt;i&gt;.x+a,b,-(D&lt;i&gt;.y+.5))</span></td></tr><tr><td class="number">7</td><td><span class="k1">struct</span><span class="k2">{</span><span class="k1">unsigned</span> x,y<span class="k2">;</span><span class="k2">}</span>D<span class="k2">[</span><span class="n">3</span><span class="k2">]</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">float</span> X<span class="k3">=</span><span class="n">5</span>,Z<span class="k3">=</span><span class="k3">-</span><span class="n">5</span>,Y,w,z,O,P<span class="k2">;</span><span class="k1">int</span> M<span class="k2">[</span><span class="n">10</span><span class="k2">]</span><span class="k2">[</span><span class="n">10</span></td></tr><tr><td class="number">8</td><td><span class="k2">]</span>,g<span class="k3">=</span><span class="n">1200</span>,S<span class="k3">=</span><span class="n">0</span>,i,v<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">void</span> F<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">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>install_allegro_gl<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">9</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<span class="k2">(</span><span class="n">1024</span>,<span class="n">1</span><span class="k2">)</span>A<span class="k2">(</span><span class="n">8192</span>,<span class="n">32</span><span class="k2">)</span>A<span class="k2">(</span><span class="n">131072</span>,<span class="n">1</span><span class="k2">)</span>A<span class="k2">(</span><span class="k3">-</span><span class="n">1</span>,<span class="n">140320</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">10</td><td><span class="n">0x4F474C57</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>glEnable<span class="k2">(</span><span class="n">2929</span><span class="k2">)</span><span class="k2">;</span>glMatrixMode<span class="k2">(</span><span class="n">5889</span><span class="k2">)</span><span class="k2">;</span>glFrustum<span class="k2">(</span><span class="k3">-</span>.<span class="n">09</span>,.<span class="n">09</span>,</td></tr><tr><td class="number">11</td><td><span class="k3">-</span>.<span class="n">07</span>,.<span class="n">07</span>,.<span class="n">1</span>,<span class="n">300</span><span class="k2">)</span><span class="k2">;</span>glMatrixMode<span class="k2">(</span><span class="n">5888</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>F,<span class="n">17</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="k2">(</span><span class="n">100</span><span class="k2">)</span>M<span class="k2">[</span>i%</td></tr><tr><td class="number">12</td><td><span class="n">10</span><span class="k2">]</span><span class="k2">[</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>I<span class="k2">(</span><span class="n">85</span><span class="k2">)</span>M<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><span class="n">0</span><span class="k2">;</span>I<span class="k2">(</span><span class="n">3</span><span class="k2">)</span>D<span class="k3">&lt;</span>i&gt;.x<span class="k3">=</span>D<span class="k3">&lt;</span>i&gt;.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">10</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span><span class="k3">!</span></td></tr><tr><td class="number">13</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">while</span><span class="k2">(</span>T<span class="k2">)</span><span class="k2">{</span>v-<span class="k3">=</span><span class="k3">!</span><span class="k3">!</span>v<span class="k2">;</span>T--<span class="k2">;</span>g<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>w<span class="k3">=</span>X<span class="k2">;</span>z<span class="k3">=</span>Z<span class="k2">;</span>Y-<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">*</span><span class="n">3</span><span class="k2">;</span>Y<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="k3">*</span><span class="n">3</span><span class="k2">;</span>X<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>O<span class="k3">=</span>Y<span class="k3">*</span></td></tr><tr><td class="number">14</td><td>.<span class="n">0174</span><span class="k2">)</span><span class="k3">*</span><span class="k2">(</span>P<span class="k3">=</span><span class="k3">-</span>.<span class="n">05</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="k2">)</span><span class="k2">;</span>Z-<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>O<span class="k2">)</span><span class="k3">*</span>P<span class="k2">;</span>X<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>O<span class="k2">)</span><span class="k3">*</span>.<span class="n">05</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>Z-<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>O<span class="k2">)</span><span class="k3">*</span>.<span class="n">05</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></td></tr><tr><td class="number">15</td><td><span class="k1">if</span><span class="k2">(</span>M<span class="k2">[</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span>X<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k3">-</span>Z<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>X<span class="k3">=</span>w,Z<span class="k3">=</span>z<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>M<span class="k2">[</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span>X<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k3">-</span>Z<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span>S<span class="k3">+</span><span class="k3">+</span>,M<span class="k2">[</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span>X<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k3">-</span>Z<span class="k2">]</span></td></tr><tr><td class="number">16</td><td><span class="k3">=</span><span class="n">0</span>,<a href="http://www.delorie.com/djgpp/doc/libc/libc_624.html" target="_blank">printf</a><span class="k2">(</span><span class="s">"Score:%i\n"</span>,S<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>g&gt;1200<span class="k2">)</span><span class="k2">{</span>I<span class="k2">(</span><span class="n">100</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>M<span class="k2">[</span>i%<span class="n">10</span><span class="k2">]</span><span class="k2">[</span>i<span class="k3">/</span><span class="n">10</span><span class="k2">]</span><span class="k3">&gt;</span><span class="n">1</span><span class="k2">)</span>M<span class="k2">[</span>i%<span class="n">10</span><span class="k2">]</span><span class="k2">[</span>i<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></td></tr><tr><td class="number">17</td><td><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>M<span class="k2">[</span>i%<span class="n">10</span><span class="k2">]</span><span class="k2">[</span>i<span class="k3">/</span><span class="n">10</span><span class="k2">]</span><span class="k2">)</span>M<span class="k2">[</span>i%<span class="n">10</span><span class="k2">]</span><span class="k2">[</span>i<span class="k3">/</span><span class="n">10</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="k3">&amp;</span><span class="n">1</span><span class="k3">+</span><span class="n">1</span><span class="k2">;</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">if</span><span class="k2">(</span><span class="k3">!</span><span class="k2">(</span>g%<span class="n">60</span><span class="k2">)</span><span class="k2">)</span>I<span class="k2">(</span><span class="n">3</span><span class="k2">)</span><span class="k2">{</span>D<span class="k3">&lt;</span>i&gt;.x<span class="k3">=</span><span class="k2">(</span>D<span class="k3">&lt;</span>i&gt;.x<span class="k3">+</span></td></tr><tr><td class="number">18</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">3</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span>%<span class="n">10</span><span class="k2">;</span>D<span class="k3">&lt;</span>i&gt;.y<span class="k3">=</span><span class="k2">(</span>D<span class="k3">&lt;</span>i&gt;.y<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">3</span><span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span>%<span class="n">10</span><span class="k2">;</span><span class="k2">}</span>I<span class="k2">(</span><span class="n">3</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>D<span class="k3">&lt;</span>i&gt;.x<span class="k3">=</span><span class="k3">=</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span>X<span class="k3">&amp;</span><span class="k3">&amp;</span>D<span class="k3">&lt;</span>i&gt;.y</td></tr><tr><td class="number">19</td><td><span class="k3">=</span><span class="k3">=</span><span class="k3">-</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span>Z<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>v<span class="k2">)</span>S<span class="k3">=</span><span class="n">0</span>,v<span class="k3">=</span><span class="n">120</span>,<a href="http://www.delorie.com/djgpp/doc/libc/libc_624.html" target="_blank">printf</a><span class="k2">(</span><span class="s">"\a"</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>glLoadIdentity<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>glClear<span class="k2">(</span><span class="n">16640</span><span class="k2">)</span><span class="k2">;</span>glRotatef<span class="k2">(</span></td></tr><tr><td class="number">20</td><td>Y,<span class="n">0</span>,<span class="n">1</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>glTranslatef<span class="k2">(</span><span class="k3">-</span>X,<span class="k3">-</span>.<span class="n">5</span>,<span class="k3">-</span>Z<span class="k2">)</span><span class="k2">;</span>glBegin<span class="k2">(</span><span class="n">7</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>y<span class="k3">&lt;</span><span class="n">10</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>I<span class="k2">(</span><span class="n">10</span><span class="k2">)</span><span class="k2">{</span>P<span class="k3">=</span>.<span class="n">5</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>M</td></tr><tr><td class="number">21</td><td><span class="k3">&lt;</span>i&gt;<span class="k2">[</span>y<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>glColor3f<span class="k2">(</span>P,P,P<span class="k2">)</span><span class="k2">;</span>y<span class="k3">=</span><span class="k3">-</span>y-1<span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">0</span>,y<span class="k2">)</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">1</span>,y<span class="k2">)</span>V<span class="k2">(</span>i,<span class="n">1</span>,y<span class="k2">)</span>V<span class="k2">(</span>i,<span class="n">0</span>,y<span class="k2">)</span>y<span class="k3">=</span>y<span class="k3">+</span><span class="n">1</span><span class="k2">;</span>V<span class="k2">(</span>i</td></tr><tr><td class="number">22</td><td><span class="k3">+</span><span class="n">1</span>,<span class="n">0</span>,y<span class="k2">)</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">1</span>,y<span class="k2">)</span>V<span class="k2">(</span>i,<span class="n">1</span>,y<span class="k2">)</span>V<span class="k2">(</span>i,<span class="n">0</span>,y<span class="k2">)</span>y<span class="k3">=</span><span class="k3">-</span>y<span class="k2">;</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">0</span>,<span class="k3">-</span>y-1<span class="k2">)</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">1</span>,<span class="k3">-</span>y-1<span class="k2">)</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span>,<span class="n">1</span>,<span class="k3">-</span>y<span class="k2">)</span>V<span class="k2">(</span>i<span class="k3">+</span><span class="n">1</span></td></tr><tr><td class="number">23</td><td>,<span class="n">0</span>,<span class="k3">-</span>y<span class="k2">)</span>V<span class="k2">(</span>i,<span class="n">0</span>,<span class="k3">-</span>y-1<span class="k2">)</span>V<span class="k2">(</span>i,<span class="n">1</span>,<span class="k3">-</span>y-1<span class="k2">)</span>V<span class="k2">(</span>i,<span class="n">1</span>,<span class="k3">-</span>y<span class="k2">)</span>V<span class="k2">(</span>i,<span class="n">0</span>,<span class="k3">-</span>y<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>y<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>glColor3f<span class="k2">(</span>P,P,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>V</td></tr><tr><td class="number">24</td><td><span class="k2">(</span>i<span class="k3">+</span>P,.<span class="n">75</span>,<span class="k3">-</span>y-P<span class="k2">)</span>V<span class="k2">(</span>i<span class="k3">+</span>.<span class="n">75</span>,O<span class="k3">=</span>.<span class="n">25</span>,<span class="k3">-</span>y-.75<span class="k2">)</span>V<span class="k2">(</span>i<span class="k3">+</span>O,O,<span class="k3">-</span>y-O<span class="k2">)</span>V<span class="k2">(</span>i<span class="k3">+</span>.<span class="n">75</span>,O,<span class="k3">-</span>y-O<span class="k2">)</span><span class="k2">}</span><span class="k2">}</span>I<span class="k2">(</span><span class="n">3</span><span class="k2">)</span><span class="k2">{</span>glColor3f<span class="k2">(</span></td></tr><tr><td class="number">25</td><td><span class="n">0</span>,<span class="n">0</span>,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>R<span class="k2">(</span><span class="n">0</span>,<span class="n">0</span><span class="k2">)</span>R<span class="k2">(</span>O,<span class="n">2</span><span class="k2">)</span>R<span class="k2">(</span>.<span class="n">75</span>,<span class="n">2</span><span class="k2">)</span>R<span class="k2">(</span><span class="n">1</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">}</span>glEnd<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>allegro_gl_flip<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>
Marcello
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Marcello)</author>
		<pubDate>Thu, 05 Feb 2004 11:05:42 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Marcello: I still needed to #include &lt;stdio.h&gt; on that one, so it was 26 lines <img src="http://www.allegro.cc/forums/smileys/sad.gif" alt=":(" /><br />Krzysztof Kluczek: Runs for me -- quite cool <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /><br />Minigolf is kinda silly ... Elias&#39;s new entry is an interesting concept ...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Thu, 05 Feb 2004 12:53:44 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Here you have my entry. It&#039;s the first time I&#039;ve finished an entry for an Allegro <i>anything</i>Hack and I&#039;m very happy!:)</p><p>I&#039;ve <i>hacked</i> some ideas from Tobias&#039; entry (Hey, this is a Hack competition, isn&#039;t it?;))</p><p>It is the classic <b><i>cannon game</i></b>, where the two players are at opposite sides of a mountain/wall and shoots one against the other. Both players uses the same controls:<br />[list][*]<b>Up/down cursors:</b> change the shoot angle.<br />[*]<b>Left/right cursors:</b> change the shoot distance.<br />[*]<b>Space:</b> shoot.<br />[*]<b>Esc:</b> get out.<br />[/list]<br />Here you have the source (it do not need more headers since the rand, srand &amp; time functions use and return integers, so they don&#039;t need prototipes, just as K&amp;R said:P[edit]Or Allegro includes it for me????[/edit]):<br />[edit2]I&#039;ve attached a Win32 binary if you can&#039;t compile it[/edit2] 
</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number">  1</span><span class="p">#include&lt;allegro.h&gt; /* CAÑÓN: Ñuño's ScreenHack 2004 entry (c)2004. Is GPL. */</span>
<span class="number">  2</span><span class="k1">typedef</span> <span class="k1">int</span> i<span class="k2">;</span><span class="k1">typedef</span> <span class="k1">float</span> f<span class="k2">;</span><span class="k1">typedef</span> <span class="k1">void</span> v<span class="k2">;</span>i x1,y1,a1,f1,x2,y2,a2,f2,k<span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>
<span class="number">  3</span>s<span class="k2">;</span>v bp<span class="k2">(</span>c<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,c<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>gk<span class="k2">(</span>v<span class="k2">)</span><span class="k2">{</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><span class="k3">&gt;</span><span class="k3">&gt;</span><span class="n">8</span><span class="k2">;</span><span class="k2">}</span>v kb<span class="k2">(</span>v<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="number">  4</span><span class="k2">;</span><span class="k2">}</span>rn<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>f cx<span class="k2">(</span>a,l<span class="k2">)</span><span class="k2">{</span><span class="k1">return</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>a<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">16</span><span class="k2">)</span><span class="k3">*</span>l<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="k2">}</span>f cy<span class="k2">(</span>a,l<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span>
<span class="number">  5</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>a<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">16</span><span class="k2">)</span><span class="k3">*</span>l<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="k2">}</span>v ct<span class="k2">(</span><span class="k1">char</span><span class="k3">*</span>S,i y,i c<span class="k2">)</span><span class="k2">{</span>textout_centre<span class="k2">(</span>s,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,S,<span class="n">160</span>,y,c<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>ui
<span class="number">  6</span><span class="k2">(</span>i<span class="k3">*</span>x,i<span class="k3">*</span>y,i<span class="k3">*</span>a,i<span class="k3">*</span>F,i p<span class="k2">)</span><span class="k2">{</span>i r,h<span class="k2">;</span>f bx,by,vx,vy<span class="k2">;</span><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>s,<span class="k3">*</span>x,<span class="n">210</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/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span>s,<span class="k3">*</span>x,<span class="n">210</span>,<span class="k3">*</span>
<span class="number">  7</span>x<span class="k3">+</span>cx<span class="k2">(</span><span class="k3">*</span>a,<span class="n">8</span><span class="k2">)</span>,<span class="n">210</span><span class="k3">+</span>cy<span class="k2">(</span><span class="k3">*</span>a,<span class="n">8</span><span class="k2">)</span>,<span class="n">7</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,<span class="k3">*</span>x-25,<span class="n">230</span>,<span class="k3">*</span>x<span class="k3">+</span><span class="n">25</span>,<span class="n">235</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>s,<span class="k3">*</span>x-25,
<span class="number">  8</span><span class="n">230</span>,<span class="k3">*</span>x-25<span class="k3">+</span><span class="k2">(</span><span class="k3">*</span>F<span class="k3">/</span><span class="n">2</span><span class="k2">)</span>,<span class="n">235</span>,<span class="n">7</span><span class="k2">)</span><span class="k2">;</span>kb<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span><span class="k2">(</span>k<span class="k3">=</span>gk<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k3">!</span><span class="k3">=</span><span class="n">59</span><span class="k3">&amp;</span><span class="k3">&amp;</span>k<span class="k3">!</span><span class="k3">=</span><span class="n">75</span><span class="k2">)</span><span class="k2">{</span><span class="k3">*</span>F<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span><span class="n">83</span><span class="k2">)</span><span class="k3">-</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span><span class="n">82</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span>
<span class="number">  9</span><span class="k2">(</span><span class="k3">*</span>F<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k3">*</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>F&gt;100<span class="k2">)</span><span class="k3">*</span>F<span class="k3">=</span><span class="n">100</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,<span class="k3">*</span>x-25,<span class="n">230</span>,<span class="k3">*</span>x<span class="k3">+</span><span class="n">25</span>,<span class="n">235</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>s,<span class="k3">*</span>x-25,
<span class="number"> 10</span><span class="n">230</span>,<span class="k3">*</span>x-25<span class="k3">+</span><span class="k2">(</span><span class="k3">*</span>F<span class="k3">/</span><span class="n">2</span><span class="k2">)</span>,<span class="n">235</span>,<span class="n">7</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>s,<span class="k3">*</span>x,<span class="n">210</span>,<span class="k3">*</span>x<span class="k3">+</span>cx<span class="k2">(</span><span class="k3">*</span>a,<span class="n">8</span><span class="k2">)</span>,<span class="n">210</span><span class="k3">+</span>cy<span class="k2">(</span><span class="k3">*</span>a,<span class="n">8</span><span class="k2">)</span>,<span class="n">10</span><span class="k2">)</span><span class="k2">;</span><span class="k3">*</span>a<span class="k3">=</span><span class="k2">(</span><span class="k3">*</span>a<span class="k3">+</span><span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span>
<span class="number"> 11</span><span class="n">85</span><span class="k2">)</span><span class="k3">-</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span><span class="n">84</span><span class="k2">)</span><span class="k2">)</span><span class="k3">*</span>p<span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="n">0xFFFFF</span>L<span class="k2">;</span><a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a><span class="k2">(</span>s,<span class="k3">*</span>x,<span class="n">210</span>,<span class="k3">*</span>x<span class="k3">+</span>cx<span class="k2">(</span><span class="k3">*</span>a,<span class="n">8</span><span class="k2">)</span>,<span class="n">210</span><span class="k3">+</span>cy<span class="k2">(</span><span class="k3">*</span>a,<span class="n">8</span><span class="k2">)</span>,<span class="n">7</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span><span class="n">75</span><span class="k2">)</span><span class="k2">{</span>
<span class="number"> 12</span>by<span class="k3">=</span><span class="k3">*</span>y-2<span class="k3">+</span><span class="k2">(</span>vy<span class="k3">=</span>cy<span class="k2">(</span><span class="k3">*</span>a,<span class="k3">*</span>F<span class="k3">/</span><span class="n">10</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>bx<span class="k3">=</span><span class="k3">*</span>x<span class="k3">+</span><span class="k2">(</span>vx<span class="k3">=</span>cx<span class="k2">(</span><span class="k3">*</span>a,<span class="k3">*</span>F<span class="k3">/</span><span class="n">10</span><span class="k2">)</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/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span>s,bx<span class="k3">+</span><span class="n">2</span>,by<span class="k3">+</span><span class="n">2</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span>
<span class="number"> 13</span><span class="n">11</span><span class="k3">&amp;</span><span class="k3">&amp;</span><a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span>s,bx-1,by<span class="k3">+</span><span class="n">2</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">11</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>bx<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>vx<span class="k3">*</span><span class="k3">=</span>.<span class="n">99</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&lt;</span><span class="n">0</span><span class="k3">|</span><span class="k3">|</span>bx&gt;318<span class="k2">)</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>by<span class="k3">+</span><span class="k3">=</span>vy
<span class="number"> 14</span><span class="k3">+</span><span class="k3">=</span>.<span class="n">2</span><span class="k2">)</span><span class="k3">&gt;</span><span class="n">238</span><span class="k2">)</span><span class="k1">return</span> <span class="n">0</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,bx,by,bx<span class="k3">+</span><span class="n">1</span>,by<span class="k3">+</span><span class="n">1</span>,<span class="n">15</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">100</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,bx,by,bx<span class="k3">+</span>
<span class="number"> 15</span><span class="n">1</span>,by<span class="k3">+</span><span class="n">1</span>,<span class="n">11</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>h<span class="k3">=</span>r<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>r<span class="k3">&lt;</span><span class="n">15</span><span class="k2">;</span>r<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>s,bx,by,r,<span class="n">12</span><span class="k2">)</span><span class="k2">;</span>h<span class="k3">=</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>s,x1,y1<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span>
<span class="number"> 16</span><span class="n">12</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>s,x2,y2<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">12</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">100</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">for</span><span class="k2">(</span>r<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>r<span class="k3">&lt;</span><span class="n">15</span><span class="k2">;</span>r<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>s,bx,by,r,<span class="n">11</span><span class="k2">)</span>
<span class="number"> 17</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">100</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">return</span> h<span class="k2">;</span><span class="k2">}</span><span class="k1">return</span> k<span class="k3">=</span><span class="k3">=</span><span class="n">59</span><span class="k2">;</span><span class="k2">}</span>main<span class="k2">(</span>v<span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/set_uformat" target="_blank"><span class="a">set_uformat</span></a><span class="k2">(</span>U_ASCII<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>
<span class="number"> 18</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_keyboard" target="_blank"><span class="a">install_keyboard</span></a><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/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_SAFE,<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="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>
<span class="number"> 19</span>return-1<span class="k2">;</span>s<span class="k3">=</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k2">;</span><span class="k2">;</span><span class="k2">)</span><span class="k2">{</span>bp<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>ct<span class="k2">(</span><span class="s">"CAÑÓN"</span>,<span class="n">100</span>,<span class="n">2</span><span class="k2">)</span><span class="k2">;</span>ct<span class="k2">(</span><span class="s">"SPACE or ESC"</span>,<span class="n">120</span>,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span>ct<span class="k2">(</span>
<span class="number"> 20</span><span class="s">"(c)Ñuño,2004"</span>,<span class="n">220</span>,<span class="n">9</span><span class="k2">)</span><span class="k2">;</span>kb<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span><span class="k2">(</span>k<span class="k3">=</span>gk<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k3">!</span><span class="k3">=</span><span class="n">59</span><span class="k3">&amp;</span><span class="k3">&amp;</span>k<span class="k3">!</span><span class="k3">=</span><span class="n">75</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span><span class="n">59</span><span class="k2">)</span><span class="k1">return</span> <span class="n">0</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="number"> 21</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>bp<span class="k2">(</span><span class="n">11</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,<span class="n">0</span>,<span class="n">180</span>,<span class="n">320</span>,<span class="n">240</span>,<span class="n">10</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/ellipsefill" target="_blank"><span class="a">ellipsefill</span></a><span class="k2">(</span>s,<span class="n">160</span>,<span class="n">180</span>,rn<span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k3">+</span><span class="n">20</span>,rn<span class="k2">(</span>
<span class="number"> 22</span><span class="n">120</span><span class="k2">)</span><span class="k3">+</span><span class="n">30</span>,<span class="n">10</span><span class="k2">)</span><span class="k2">;</span>x2<span class="k3">=</span><span class="n">320</span><span class="k3">-</span><span class="k2">(</span>x1<span class="k3">=</span>rn<span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k3">+</span><span class="n">10</span><span class="k2">)</span><span class="k2">;</span>y1<span class="k3">=</span>y2<span class="k3">=</span><span class="n">178</span><span class="k2">;</span>a1<span class="k3">=</span>f1<span class="k3">=</span>f2<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>a2<span class="k3">=</span><span class="n">128</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>s,x1-1,y1<span class="k3">+</span><span class="n">1</span>,
<span class="number"> 23</span>x1<span class="k3">+</span><span class="n">1</span>,y1-1,<span class="n">7</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>s,x1<span class="k3">+</span><span class="n">1</span>,y1<span class="k3">+</span><span class="n">1</span>,<span class="n">7</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>s,x2<span class="k3">+</span><span class="n">1</span>,y2<span class="k3">+</span><span class="n">1</span>,x2-1,y2-1,<span class="n">7</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>s,x2
<span class="number"> 24</span><span class="k3">-</span><span class="n">1</span>,y2<span class="k3">+</span><span class="n">1</span>,<span class="n">7</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</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>ui<span class="k2">(</span><span class="k3">&amp;</span>x1,<span class="k3">&amp;</span>y1,<span class="k3">&amp;</span>a1,<span class="k3">&amp;</span>f1,<span class="n">1</span><span class="k2">)</span><span class="k2">)</span><span class="k1">break</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>ui<span class="k2">(</span><span class="k3">&amp;</span>x2,<span class="k3">&amp;</span>y2,<span class="k3">&amp;</span>a2,<span class="k3">&amp;</span>f2,<span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 25</span><span class="k1">break</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">1500</span><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><span class="k2">;</span> <span class="c">/* I did it! */</span>
</div></div><p>

<img src="http://www.allegro.cc/forums/smileys/cool.gif" alt="8-)" /><img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" /></p><p>This other is the <i>uncompressed and commented</i> version. It&#039;s exactly the same than the previous one, but it is indented and full of comments (more than 100 lines:o... How I&#039;d put them in only 25? <img src="http://www.allegro.cc/forums/smileys/huh.gif" alt="???" />)
</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number">   1</span><span class="c">/* CAÑÓN: Ñuño's ScreenHack 2004 entry (c)2004. Is GPL. */</span>
<span class="number">   2</span>
<span class="number">   3</span><span class="c">/* This is the 'uncompressed' commented version. */</span>
<span class="number">   4</span>
<span class="number">   5</span><span class="p">#include&lt;allegro.h&gt; /* I'll use the Allegro library only. */</span>
<span class="number">   6</span>
<span class="number">   7</span><span class="c">/* No more headers needed. The std functions used (rand, srand &amp; time)</span>
<span class="number">   8</span><span class="c">   uses and return integer, so they don't need prototipes. */</span>
<span class="number">   9</span>
<span class="number">  10</span><span class="c">/* Some typedefs. This is to reduce the number of characters needed. */</span>
<span class="number">  11</span><span class="k1">typedef</span> <span class="k1">int</span> i<span class="k2">;</span>
<span class="number">  12</span><span class="k1">typedef</span> <span class="k1">float</span> f<span class="k2">;</span>
<span class="number">  13</span><span class="k1">typedef</span> <span class="k1">void</span> v<span class="k2">;</span>
<span class="number">  14</span>
<span class="number">  15</span>i x1, y1, a1, f1, <span class="c">/* Position, angle and 'force' of player one. */</span>
<span class="number">  16</span>  x2, y2, a2, f2<span class="k2">;</span> <span class="c">/* Position, angle and 'force' of player two. */</span>
<span class="number">  17</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="c">/* Alias for screen. Only one character! */</span>
<span class="number">  18</span>
<span class="number">  19</span><span class="c">/* Next functions are used often, so it reduces the number of characters. */</span>
<span class="number">  20</span>
<span class="number">  21</span><span class="c">/* bp:</span>
<span class="number">  22</span><span class="c"> *  Clear screen. (from 'borrar pantalla', in Spanish. */</span>
<span class="number">  23</span>v bp <span class="k2">(</span>c<span class="k2">)</span>
<span class="number">  24</span><span class="k2">{</span>
<span class="number">  25</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,c<span class="k2">)</span><span class="k2">;</span> 
<span class="number">  26</span><span class="k2">}</span>
<span class="number">  27</span>
<span class="number">  28</span><span class="c">/* gk:</span>
<span class="number">  29</span><span class="c"> *   Get a key as scan code. */</span>
<span class="number">  30</span>gk <span class="k2">(</span>v<span class="k2">)</span>
<span class="number">  31</span><span class="k2">{</span>
<span class="number">  32</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><span class="k3">&gt;</span><span class="k3">&gt;</span><span class="n">8</span><span class="k2">;</span>
<span class="number">  33</span><span class="k2">}</span>
<span class="number">  34</span>
<span class="number">  35</span><span class="c">/* Clean the keyboard buffer. */</span>
<span class="number">  36</span>v kb<span class="k2">(</span>v<span class="k2">)</span>
<span class="number">  37</span><span class="k2">{</span>
<span class="number">  38</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="number">  39</span><span class="k2">}</span>
<span class="number">  40</span>
<span class="number">  41</span><span class="c">/* rn:</span>
<span class="number">  42</span><span class="c"> *   Generates a random number. */</span>
<span class="number">  43</span>rn <span class="k2">(</span>x<span class="k2">)</span>
<span class="number">  44</span><span class="k2">{</span>
<span class="number">  45</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="number">  46</span><span class="k2">}</span>
<span class="number">  47</span>
<span class="number">  48</span><span class="c">/* cx:</span>
<span class="number">  49</span><span class="c"> * cy:</span>
<span class="number">  50</span><span class="c"> *   Calculates the cartesian factor for the given vector (angle and length). */</span>
<span class="number">  51</span>f cx <span class="k2">(</span>a, l<span class="k2">)</span>
<span class="number">  52</span><span class="k2">{</span>
<span class="number">  53</span>   <span class="k1">return</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>a<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">16</span><span class="k2">)</span> <span class="k3">*</span> l<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="number">  54</span><span class="k2">}</span>
<span class="number">  55</span>
<span class="number">  56</span>f cy <span class="k2">(</span>a, l<span class="k2">)</span>
<span class="number">  57</span><span class="k2">{</span>
<span class="number">  58</span>   <span class="k1">return</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>a<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">16</span><span class="k2">)</span> <span class="k3">*</span> l<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="number">  59</span><span class="k2">}</span>
<span class="number">  60</span>
<span class="number">  61</span><span class="c">/* ct:</span>
<span class="number">  62</span><span class="c"> *   Writes a centered text. */</span>
<span class="number">  63</span>v ct <span class="k2">(</span><span class="k1">char</span> <span class="k3">*</span>S, i y, i c<span class="k2">)</span>
<span class="number">  64</span><span class="k2">{</span>
<span class="number">  65</span>   textout_centre <span class="k2">(</span>s, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, S, <span class="n">160</span>, y, c<span class="k2">)</span><span class="k2">;</span>
<span class="number">  66</span><span class="k2">}</span>
<span class="number">  67</span>
<span class="number">  68</span><span class="c">/* ui:</span>
<span class="number">  69</span><span class="c"> *  User input and his response. Returns TRUE if the game finishes or FALSE if</span>
<span class="number">  70</span><span class="c"> *  game continues. */</span>
<span class="number">  71</span>ui <span class="k2">(</span>i <span class="k3">*</span>x, i <span class="k3">*</span>y, i <span class="k3">*</span>a, i <span class="k3">*</span>F, i p<span class="k2">)</span>
<span class="number">  72</span><span class="k2">{</span>
<span class="number">  73</span>   i k<span class="k3">=</span><span class="n">0</span>, r, h<span class="k2">;</span> <span class="c">/* Key, explosion radius and hit flag. */</span>
<span class="number">  74</span>   f bx, by, vx, vy<span class="k2">;</span> <span class="c">/* Bullet position and velocity. */</span>
<span class="number">  75</span>
<span class="number">  76</span><span class="c">/* References circle for the angle. */</span>
<span class="number">  77</span>   <a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a> <span class="k2">(</span>s, <span class="k3">*</span>x, <span class="n">210</span>, <span class="n">10</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  78</span>   <a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a> <span class="k2">(</span>s, <span class="k3">*</span>x, <span class="n">210</span>, <span class="k3">*</span>x<span class="k3">+</span>cx<span class="k2">(</span><span class="k3">*</span>a,<span class="n">8</span><span class="k2">)</span>, <span class="n">210</span><span class="k3">+</span>cy<span class="k2">(</span><span class="k3">*</span>a,<span class="n">8</span><span class="k2">)</span>, <span class="n">7</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  79</span>   <a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a> <span class="k2">(</span>s, <span class="k3">*</span>x-25, <span class="n">230</span>, <span class="k3">*</span>x<span class="k3">+</span><span class="n">25</span>, <span class="n">235</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  80</span>   <a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a> <span class="k2">(</span>s, <span class="k3">*</span>x-25, <span class="n">230</span>, <span class="k3">*</span>x-25<span class="k3">+</span><span class="k2">(</span><span class="k3">*</span>F<span class="k3">/</span><span class="n">2</span><span class="k2">)</span>, <span class="n">235</span>, <span class="n">7</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  81</span><span class="c">/* Process user input. */</span>
<span class="number">  82</span>   kb <span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  83</span>   <span class="k1">while</span> <span class="k2">(</span><span class="k2">(</span>k<span class="k3">=</span>gk<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k3">!</span><span class="k3">=</span><span class="n">59</span><span class="k3">&amp;</span><span class="k3">&amp;</span>k<span class="k3">!</span><span class="k3">=</span><span class="n">75</span><span class="k2">)</span> <span class="k2">{</span> <span class="c">/* KEY_ESC = 59. KEY_SPACE = 75.*/</span>
<span class="number">  84</span>   <span class="c">/* 'Force'. (I learnt the key input in old MSX games. 8^) */</span>
<span class="number">  85</span>      <span class="k3">*</span>F <span class="k3">+</span><span class="k3">=</span> <span class="k2">(</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span><span class="n">83</span><span class="k2">)</span><span class="k3">-</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span><span class="n">82</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span> <span class="c">/* KEY_LEFT = 82. KEY_RIGHT = 83. */</span>
<span class="number">  86</span>      <span class="k1">if</span> <span class="k2">(</span><span class="k3">*</span>F <span class="k3">&lt;</span> <span class="n">0</span><span class="k2">)</span>
<span class="number">  87</span>  <span class="k3">*</span>F <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  88</span>      <span class="k1">if</span> <span class="k2">(</span><span class="k3">*</span>F&gt;100<span class="k2">)</span>
<span class="number">  89</span>  <span class="k3">*</span>F <span class="k3">=</span> <span class="n">100</span><span class="k2">;</span>
<span class="number">  90</span>   <span class="c">/* Draw the 'Force'. */</span>
<span class="number">  91</span>      <a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a> <span class="k2">(</span>s, <span class="k3">*</span>x-25, <span class="n">230</span>, <span class="k3">*</span>x<span class="k3">+</span><span class="n">25</span>, <span class="n">235</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  92</span>      <a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a> <span class="k2">(</span>s, <span class="k3">*</span>x-25, <span class="n">230</span>, <span class="k3">*</span>x-25<span class="k3">+</span><span class="k2">(</span><span class="k3">*</span>F<span class="k3">/</span><span class="n">2</span><span class="k2">)</span>, <span class="n">235</span>, <span class="n">7</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  93</span>   <span class="c">/* Angle. First, erase the arrow. */</span>
<span class="number">  94</span>      <a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a> <span class="k2">(</span>s, <span class="k3">*</span>x, <span class="n">210</span>, <span class="k3">*</span>x<span class="k3">+</span>cx<span class="k2">(</span><span class="k3">*</span>a,<span class="n">8</span><span class="k2">)</span>, <span class="n">210</span><span class="k3">+</span>cy<span class="k2">(</span><span class="k3">*</span>a,<span class="n">8</span><span class="k2">)</span>, <span class="n">10</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  95</span>      <span class="k3">*</span>a <span class="k3">=</span> <span class="k2">(</span><span class="k3">*</span>a <span class="k3">+</span> <span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span><span class="n">85</span><span class="k2">)</span> <span class="k3">-</span> <span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span><span class="n">84</span><span class="k2">)</span><span class="k2">)</span> <span class="k3">*</span> p<span class="k2">)</span><span class="k2">)</span><span class="k3">&amp;</span><span class="n">0xFFFFF</span>L<span class="k2">;</span> <span class="c">/* KEY_UP = 84. KEY_DOWN = 85. */</span>
<span class="number">  96</span>   <span class="c">/* Draw the arrow. */</span>
<span class="number">  97</span>      <a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a> <span class="k2">(</span>s, <span class="k3">*</span>x, <span class="n">210</span>, <span class="k3">*</span>x<span class="k3">+</span>cx<span class="k2">(</span><span class="k3">*</span>a,<span class="n">8</span><span class="k2">)</span>, <span class="n">210</span><span class="k3">+</span>cy<span class="k2">(</span><span class="k3">*</span>a,<span class="n">8</span><span class="k2">)</span>, <span class="n">7</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  98</span>   <span class="k2">}</span>
<span class="number">  99</span><span class="c">/* If shoot: */</span>
<span class="number"> 100</span>   <span class="k1">if</span><span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span><span class="n">75</span><span class="k2">)</span> <span class="k2">{</span> <span class="c">/* KEY_SPACE = 75. */</span>
<span class="number"> 101</span>   <span class="c">/* Setup the bullet state. */</span>
<span class="number"> 102</span>     by <span class="k3">=</span> <span class="k3">*</span>y <span class="k3">-</span> <span class="n">2</span> <span class="k3">+</span> <span class="k2">(</span>vy<span class="k3">=</span>cy<span class="k2">(</span><span class="k3">*</span>a,<span class="k3">*</span>F<span class="k3">/</span><span class="n">10</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 103</span>     bx <span class="k3">=</span> <span class="k3">*</span>x <span class="k3">+</span> <span class="k2">(</span>vx<span class="k3">=</span>cx<span class="k2">(</span><span class="k3">*</span>a,<span class="k3">*</span>F<span class="k3">/</span><span class="n">10</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 104</span>   <span class="c">/* Animate, while the bullet is on the air. */</span>
<span class="number"> 105</span>     <span class="k1">while</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>s, bx<span class="k3">+</span><span class="n">2</span>, by<span class="k3">+</span><span class="n">2</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">11</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a> <span class="k2">(</span>s, bx-1, by<span class="k3">+</span><span class="n">2</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">11</span><span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 106</span>     <span class="c">/* Moves the bullet and check if it goes out the screen. */</span>
<span class="number"> 107</span>  <span class="k1">if</span> <span class="k2">(</span><span class="k2">(</span>bx<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>vx<span class="k3">*</span><span class="k3">=</span>.<span class="n">99</span><span class="k2">)</span><span class="k2">)</span><span class="k3">&lt;</span><span class="n">0</span> <span class="k3">|</span><span class="k3">|</span> bx&gt;318<span class="k2">)</span> <span class="c">/* The '.99' is the Gravity factor. */</span>
<span class="number"> 108</span>     <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 109</span>  <span class="k1">if</span> <span class="k2">(</span><span class="k2">(</span>by<span class="k3">+</span><span class="k3">=</span>vy<span class="k3">+</span><span class="k3">=</span>.<span class="n">2</span><span class="k2">)</span><span class="k3">&gt;</span><span class="n">238</span><span class="k2">)</span> <span class="c">/* The '.2' is the Gravity factor. */</span>
<span class="number"> 110</span>     <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 111</span>     <span class="c">/* Animation. */</span>
<span class="number"> 112</span>  <a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a> <span class="k2">(</span>s, bx, by, bx<span class="k3">+</span><span class="n">1</span>, by<span class="k3">+</span><span class="n">1</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 113</span>  <a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a> <span class="k2">(</span><span class="n">100</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 114</span>  <a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a> <span class="k2">(</span>s, bx, by, bx<span class="k3">+</span><span class="n">1</span>, by<span class="k3">+</span><span class="n">1</span>, <span class="n">11</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 115</span>     <span class="k2">}</span>
<span class="number"> 116</span>   <span class="c">/* Explosion. */</span>
<span class="number"> 117</span>     <span class="k1">for</span> <span class="k2">(</span>h<span class="k3">=</span>r<span class="k3">=</span><span class="n">0</span><span class="k2">;</span> r<span class="k3">&lt;</span><span class="n">15</span><span class="k2">;</span> r<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 118</span>  <a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a> <span class="k2">(</span>s, bx, by, r, <span class="n">12</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 119</span>  h <span class="k3">=</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>s, x1, y1<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">12</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>s, x2, y2<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">12</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 120</span>  <a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a> <span class="k2">(</span><span class="n">100</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 121</span>     <span class="k2">}</span>
<span class="number"> 122</span>     <span class="k1">for</span> <span class="k2">(</span>r<span class="k3">=</span><span class="n">0</span><span class="k2">;</span> r<span class="k3">&lt;</span><span class="n">15</span><span class="k2">;</span> r<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 123</span>  <a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a> <span class="k2">(</span>s, bx, by, r, <span class="n">11</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 124</span>  <a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a> <span class="k2">(</span><span class="n">100</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 125</span>     <span class="k2">}</span>
<span class="number"> 126</span>     <span class="k1">return</span> h<span class="k2">;</span>
<span class="number"> 127</span>   <span class="k2">}</span>
<span class="number"> 128</span>   <span class="k1">return</span> k <span class="k3">=</span><span class="k3">=</span> <span class="n">59</span><span class="k2">;</span> <span class="c">/* KEY_ESC = 59. */</span>
<span class="number"> 129</span><span class="k2">}</span>
<span class="number"> 130</span>
<span class="number"> 131</span><span class="c">/* main:</span>
<span class="number"> 132</span><span class="c"> *   The main function and loop. */</span>
<span class="number"> 133</span>main<span class="k2">(</span>v<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 134</span><span class="c">/* Game startup. */</span>
<span class="number"> 135</span>   <a href="http://www.allegro.cc/manual/set_uformat" target="_blank"><span class="a">set_uformat</span></a> <span class="k2">(</span>U_ASCII<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_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_keyboard" target="_blank"><span class="a">install_keyboard</span></a> <span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 136</span>   <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a> <span class="k2">(</span>GFX_SAFE, <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="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>
<span class="number"> 137</span>      <span class="k1">return</span> <span class="k3">-</span><span class="n">1</span><span class="k2">;</span>
<span class="number"> 138</span>   s<span class="k3">=</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a><span class="k2">;</span>
<span class="number"> 139</span><span class="c">/* Main loop. */</span>
<span class="number"> 140</span>   <span class="k1">for</span><span class="k2">(</span><span class="k2">;</span><span class="k2">;</span><span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 141</span>      i k<span class="k3">=</span><span class="n">0</span><span class="k2">;</span> <span class="c">/* The key. */</span>
<span class="number"> 142</span>
<span class="number"> 143</span>   <span class="c">/* A kind of introduction. It has, also, the main menu. */</span>
<span class="number"> 144</span>      bp <span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 145</span>      ct <span class="k2">(</span><span class="s">"TANK"</span>, <span class="n">100</span>, <span class="n">2</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 146</span>      ct <span class="k2">(</span><span class="s">"SPACE or ESC"</span>, <span class="n">120</span>, <span class="n">15</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 147</span>      ct <span class="k2">(</span><span class="s">"(c)Ñuño,2004"</span>, <span class="n">220</span>, <span class="n">9</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 148</span>      kb <span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 149</span>   <span class="c">/* Get the key and chek it. */</span>
<span class="number"> 150</span>      <span class="k1">while</span> <span class="k2">(</span><span class="k2">(</span>k<span class="k3">=</span>gk<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k3">!</span><span class="k3">=</span><span class="n">59</span><span class="k3">&amp;</span><span class="k3">&amp;</span>k<span class="k3">!</span><span class="k3">=</span><span class="n">75</span><span class="k2">)</span><span class="k2">;</span> <span class="c">/* KEY_ESC = 59. KEY_SPACE = 75.*/</span>
<span class="number"> 151</span>      <span class="k1">if</span> <span class="k2">(</span>k<span class="k3">=</span><span class="k3">=</span><span class="n">59</span><span class="k2">)</span> <span class="c">/* KEY_ESC = 59 */</span>
<span class="number"> 152</span>   <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 153</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>
<span class="number"> 154</span>   <span class="c">/* Draw the scenary. */</span>
<span class="number"> 155</span>      bp <span class="k2">(</span><span class="n">11</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 156</span>      <a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a> <span class="k2">(</span>s, <span class="n">0</span>, <span class="n">180</span>, <span class="n">320</span>, <span class="n">240</span>, <span class="n">10</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 157</span>      <a href="http://www.allegro.cc/manual/ellipsefill" target="_blank"><span class="a">ellipsefill</span></a> <span class="k2">(</span>s, <span class="n">160</span>, <span class="n">180</span>, rn<span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k3">+</span><span class="n">20</span>, rn<span class="k2">(</span><span class="n">120</span><span class="k2">)</span><span class="k3">+</span><span class="n">30</span>, <span class="n">10</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 158</span>   <span class="c">/* Set and draw thanks. */</span>
<span class="number"> 159</span>      x2 <span class="k3">=</span> <span class="n">320</span> <span class="k3">-</span> <span class="k2">(</span>x1<span class="k3">=</span>rn<span class="k2">(</span><span class="n">50</span><span class="k2">)</span><span class="k3">+</span><span class="n">10</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 160</span>      y1 <span class="k3">=</span> y2 <span class="k3">=</span> <span class="n">178</span><span class="k2">;</span>
<span class="number"> 161</span>      a1 <span class="k3">=</span> f1 <span class="k3">=</span> f2 <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> a2<span class="k3">=</span><span class="n">128</span><span class="k2">;</span>
<span class="number"> 162</span>      <a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a> <span class="k2">(</span>s, x1-1, y1<span class="k3">+</span><span class="n">1</span>, x1<span class="k3">+</span><span class="n">1</span>, y1-1, <span class="n">7</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>s, x1<span class="k3">+</span><span class="n">1</span>, y1<span class="k3">+</span><span class="n">1</span>, <span class="n">7</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 163</span>      <a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a> <span class="k2">(</span>s, x2<span class="k3">+</span><span class="n">1</span>, y2<span class="k3">+</span><span class="n">1</span>, x2-1, y2-1, <span class="n">7</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>s, x2-1, y2<span class="k3">+</span><span class="n">1</span>, <span class="n">7</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 164</span>   <span class="c">/* Game loop. */</span>
<span class="number"> 165</span>      <span class="k1">for</span> <span class="k2">(</span><span class="k2">;</span><span class="k2">;</span><span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 166</span>       <span class="k1">if</span> <span class="k2">(</span>ui <span class="k2">(</span><span class="k3">&amp;</span>x1, <span class="k3">&amp;</span>y1, <span class="k3">&amp;</span>a1, <span class="k3">&amp;</span>f1, <span class="n">1</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 167</span>      <span class="k1">break</span><span class="k2">;</span>
<span class="number"> 168</span>   <span class="k1">if</span> <span class="k2">(</span>ui <span class="k2">(</span><span class="k3">&amp;</span>x2, <span class="k3">&amp;</span>y2, <span class="k3">&amp;</span>a2, <span class="k3">&amp;</span>f2, <span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 169</span>      <span class="k1">break</span><span class="k2">;</span>
<span class="number"> 170</span>      <span class="k2">}</span>
<span class="number"> 171</span>   <span class="c">/* Pause, to see the screen. */</span>
<span class="number"> 172</span>      <a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">1500</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 173</span>   <span class="k2">}</span>
<span class="number"> 174</span>   <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span> 
<span class="number"> 175</span><span class="k2">}</span>
<span class="number"> 176</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">/* Needed by Allegro. */</span>
</div></div><p>

BTW, I&#039;ve seen that someones did a 3D demo. They&#039;re cool.</p><p>If anybody is interested, my <b>[url <a href="http://www.burdjia.com/descarga/libreria/M3D/]UnOptimised">http://www.burdjia.com/descarga/libreria/M3D/]UnOptimised</a> Voxel Landscape Renderer (UOVLR.zip)[/url]</b> has only 17 executable lines, and I think it would be packed in 6 or less lines of 80 characters whide (changing some variable names, of course;)). Today, I&#039;m too lazy, but if anybody wants a small landscape renderer for his entry...::)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Niunio)</author>
		<pubDate>Thu, 05 Feb 2004 14:13:04 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>http://www.shippysite.com/screen.gif</p><p>Did mine in 22 lines <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" />  It&#39;s a clone of Kaboom! and it has little bomb explosions, lighted fuses, etc.  It&#39;s pretty fun <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />  </p><p>*UPDATE  - my code is also the smallest 80x25 entry at a mere 1699 bytes <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>CONTROLS:  USE THE MOUSE TO CATCH THE BOMBS, THE GAME PICKS UP THE PACE THE LONGER YOU PLAY. IF A BOMB PASSES, YOU LOSE A PLATFORM. WHEN ALL 3 PLATFORMS ARE GONE, GAME OVER!<br />**********
</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="k1">struct</span> B<span class="k2">{</span><span class="k1">int</span> x,u<span class="k2">;</span><span class="k1">double</span> y<span class="k2">;</span><span class="k2">}</span>z<span class="k2">[</span><span class="n">150</span><span class="k2">]</span><span class="k2">;</span>main<span class="k2">(</span><span class="k1">int</span> d,<span class="k1">char</span><span class="k3">*</span><span class="k3">*</span>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>z,<span class="n">0</span>,<span class="k1">sizeof</span><span class="k2">(</span><span class="k1">struct</span> B</td></tr><tr><td class="number">3</td><td><span class="k2">)</span><span class="k3">*</span><span class="n">150</span><span class="k2">)</span><span class="k2">;</span><span class="k1">double</span> q<span class="k3">=</span><span class="n">160</span>,bm<span class="k3">=</span>.<span class="n">5</span><span class="k2">;</span><span class="k1">int</span> s<span class="k3">=</span><span class="n">0</span>,r<span class="k3">=</span><span class="n">200</span>,Q<span class="k3">=</span><span class="n">60</span>,C<span class="k3">=</span><span class="n">30</span>,P<span class="k3">=</span><span class="n">160</span>,p<span class="k3">=</span><span class="n">3</span>,f<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></td></tr><tr><td class="number">4</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_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_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_AUTODETECT,<span class="n">320</span>,<span class="n">200</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">5</td><td><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span><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">319</span>,<span class="n">199</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>textprintf<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>,<span class="n">100</span>,<span class="n">15</span>,<span class="s">"BLIGGITY BLAM! H</span></td></tr><tr><td class="number">6</td><td><span class="s">IT SPACE!"</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>KEY_SPACE<span class="k2">]</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>KEY_SPACE<span class="k2">]</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>KEY_ESC<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">7</td><td><span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span><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">319</span>,<span class="n">40</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,<span class="n">40</span>,<span class="n">319</span>,<span class="n">199</span>,<span class="n">9</span><span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span></td></tr><tr><td class="number">8</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">0</span>,<span class="n">0</span>,<span class="n">15</span>,<span class="s">"%i"</span>,s<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span>q<span class="k3">&lt;</span>r-bm<span class="k2">)</span> q<span class="k3">+</span><span class="k3">=</span>bm<span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span>q&gt;r<span class="k3">+</span>bm<span class="k2">)</span>q-<span class="k3">=</span>bm<span class="k2">;</span><span class="k1">else</span></td></tr><tr><td class="number">9</td><td>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>%<span class="n">320</span><span class="k2">;</span>bm<span class="k3">+</span><span class="k3">=</span>.<span class="n">0005</span><span class="k2">;</span>Q<span class="k3">=</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span><span class="k2">(</span><span class="k1">double</span><span class="k2">)</span><span class="k2">(</span><span class="n">60</span><span class="k3">/</span>bm<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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,q-6,<span class="n">12</span>,q<span class="k3">+</span><span class="n">6</span>,<span class="n">36</span>,<span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">10</td><td><span class="k2">;</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,q,<span class="n">16</span>,<span class="n">8</span>,<span class="n">15</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,q-3,<span class="n">16</span>,<span class="n">2</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,q<span class="k3">+</span></td></tr><tr><td class="number">11</td><td><span class="n">3</span>,<span class="n">16</span>,<span class="n">2</span>,<span class="n">0</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,q-10,<span class="n">8</span>,q<span class="k3">+</span><span class="n">10</span>,<span class="n">12</span>,<span class="n">0</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,q-5,<span class="n">4</span>,q<span class="k3">+</span><span class="n">5</span>,<span class="n">8</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>d</td></tr><tr><td class="number">12</td><td><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>d<span class="k3">&lt;</span>p<span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>d<span class="k2">)</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,P-10,<span class="n">175</span><span class="k3">-</span><span class="k2">(</span>d<span class="k3">*</span><span class="n">10</span><span class="k2">)</span>,P<span class="k3">+</span><span class="n">9</span>,<span class="n">180</span><span class="k3">-</span><span class="k2">(</span>d<span class="k3">*</span><span class="n">10</span><span class="k2">)</span>,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span>P<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><span class="k1">if</span><span class="k2">(</span>P<span class="k3">&lt;</span><span class="n">10</span><span class="k2">)</span></td></tr><tr><td class="number">13</td><td>P<span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>P&gt;310<span class="k2">)</span> P<span class="k3">=</span><span class="n">310</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>d<span class="k3">&lt;</span><span class="n">150</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>z<span class="k2">[</span>d<span class="k2">]</span>.u&gt;0<span class="k2">)</span><span class="k2">{</span>z<span class="k2">[</span>d<span class="k2">]</span>.y<span class="k3">+</span><span class="k3">=</span>bm<span class="k3">/</span><span class="n">2</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></td></tr><tr><td class="number">14</td><td><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,z<span class="k2">[</span>d<span class="k2">]</span>.x,z<span class="k2">[</span>d<span class="k2">]</span>.y,<span class="n">4</span>,<span class="n">0</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,z<span class="k2">[</span>d<span class="k2">]</span>.x,z<span class="k2">[</span>d<span class="k2">]</span>.y,<span class="n">4</span>,<span class="n">15</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,z<span class="k2">[</span>d<span class="k2">]</span>.x<span class="k3">+</span><span class="n">3</span></td></tr><tr><td class="number">15</td><td>,z<span class="k2">[</span>d<span class="k2">]</span>.y-3,z<span class="k2">[</span>d<span class="k2">]</span>.x<span class="k3">+</span><span class="n">5</span>,z<span class="k2">[</span>d<span class="k2">]</span>.y-5,<span class="n">15</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,z<span class="k2">[</span>d<span class="k2">]</span>.x<span class="k3">+</span><span class="n">5</span>,z<span class="k2">[</span>d<span class="k2">]</span>.y-5,z<span class="k2">[</span>d<span class="k2">]</span>.x<span class="k3">+</span><span class="n">5</span><span class="k3">+</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>%</td></tr><tr><td class="number">16</td><td><span class="n">4</span><span class="k2">)</span><span class="k3">-</span><span class="n">2</span><span class="k2">)</span>,z<span class="k2">[</span>d<span class="k2">]</span>.y-5<span class="k3">+</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">4</span><span class="k2">)</span><span class="k3">-</span><span class="n">2</span><span class="k2">)</span>,<span class="n">14</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>z<span class="k2">[</span>d<span class="k2">]</span>.y&gt;199<span class="k2">)</span><span class="k2">{</span>z<span class="k2">[</span>d<span class="k2">]</span>.u<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k3">-</span><span class="k3">-</span>p<span class="k2">;</span>q<span class="k3">=</span><span class="n">160</span><span class="k2">;</span>bm<span class="k3">=</span>.<span class="n">5</span><span class="k2">;</span>r<span class="k3">=</span><span class="n">200</span><span class="k2">;</span></td></tr><tr><td class="number">17</td><td>Q<span class="k3">=</span><span class="n">60</span><span class="k2">;</span>C<span class="k3">=</span><span class="n">30</span><span class="k2">;</span>f<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>P<span class="k3">=</span><span class="n">160</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>z,<span class="n">0</span>,<span class="k1">sizeof</span><span class="k2">(</span><span class="k1">struct</span> B<span class="k2">)</span><span class="k3">*</span><span class="n">150</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>z<span class="k2">[</span>d<span class="k2">]</span>.y&gt;<span class="k3">=</span><span class="n">178</span><span class="k3">-</span>p<span class="k3">*</span><span class="n">10</span><span class="k3">&amp;</span><span class="k3">&amp;</span></td></tr><tr><td class="number">18</td><td>z<span class="k2">[</span>d<span class="k2">]</span>.y<span class="k3">&lt;</span><span class="k3">=</span><span class="n">182</span><span class="k3">&amp;</span><span class="k3">&amp;</span>z<span class="k2">[</span>d<span class="k2">]</span>.x&gt;<span class="k3">=</span>P-12<span class="k3">&amp;</span><span class="k3">&amp;</span>z<span class="k2">[</span>d<span class="k2">]</span>.x<span class="k3">&lt;</span><span class="k3">=</span>P<span class="k3">+</span><span class="n">12</span><span class="k2">)</span><span class="k2">{</span>z<span class="k2">[</span>d<span class="k2">]</span>.u<span class="k3">=</span><span class="k3">-</span><span class="n">5</span><span class="k2">;</span>s<span class="k3">+</span><span class="k3">=</span><span class="n">50</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>z<span class="k2">[</span>d<span class="k2">]</span>.u<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">19</td><td><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,z<span class="k2">[</span>d<span class="k2">]</span>.x,z<span class="k2">[</span>d<span class="k2">]</span>.y,<span class="k3">-</span>z<span class="k2">[</span>d<span class="k2">]</span>.u,<span class="n">12</span><span class="k2">)</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>z<span class="k2">[</span>d<span class="k2">]</span>.u<span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>f&gt;<span class="k3">=</span>Q<span class="k3">+</span>C<span class="k2">)</span><span class="k2">{</span>z<span class="k2">[</span>d<span class="k2">]</span>.u<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>z</td></tr><tr><td class="number">20</td><td><span class="k2">[</span>d<span class="k2">]</span>.x<span class="k3">=</span>q<span class="k2">;</span>z<span class="k2">[</span>d<span class="k2">]</span>.y<span class="k3">=</span><span class="n">16</span><span class="k2">;</span>f<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>C<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>%Q<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>p<span class="k3">&lt;</span><span class="n">1</span><span class="k2">)</span><span class="k1">break</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>f<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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,</td></tr><tr><td class="number">21</td><td><span class="n">0</span>,<span class="n">319</span>,<span class="n">199</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>textprintf<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>,<span class="n">100</span>,<span class="n">15</span>,<span class="s">"FINAL SCORE: %i.PRESS ESC!"</span>,s<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">22</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>KEY_ESC<span class="k2">]</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>KEY_ESC<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>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Ryan Broomfield)</author>
		<pubDate>Thu, 05 Feb 2004 16:36:37 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Krzysztof Kluczek, either your source code is buggy and cannot be compiled or i am a donkey using gcc, but i can&#39;t be able to compile it, even when i turn off all access checking and warning.</p><p>After testing all source code except allegro gl and Krzysztof one, i give my voice to Ryan game.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (GullRaDriel)</author>
		<pubDate>Thu, 05 Feb 2004 17:43:44 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>It&#39;s a clone of Kablam!</p></div></div><p>I think you mean &quot;Ka<i>boom</i>!&quot; ...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (23yrold3yrold)</author>
		<pubDate>Thu, 05 Feb 2004 17:45:29 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>yeah, kaboom.  My bad <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Ryan Broomfield)</author>
		<pubDate>Thu, 05 Feb 2004 18:59:10 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Strange, I compiled it under Linux Slackware 9 without problems and got it running smoothly.</p><p>Here is my &quot;makefile&quot; (providing test.cpp is a source file):</p><div class="source-code snippet"><div class="inner"><pre><span class="p">#! /bin/sh</span>
g<span class="k3">+</span><span class="k3">+</span> `allegro-config <span class="k3">-</span><span class="k3">-</span>cflags` <span class="k3">-</span>c test.cpp
g<span class="k3">+</span><span class="k3">+</span> <span class="k3">-</span>o test test.o <span class="k3">-</span>lalleg <span class="k3">-</span>lpthread <span class="k3">-</span>s <span class="k3">-</span>lm <span class="k3">-</span>ldl <span class="k3">-</span>export-dynamic
</pre></div></div><p>

I tried other ways to compile it and yes, I didn`t manage to compile it using Linux gcc and I tried both .c and .cpp extensions.</p><p>I guess, the reason it may crash is using GFX_VGA 320x200 8-bit mode. I guess it isn`t using SVGA-Lib under Linux, so it might have failed on some systems (I was running as a root on my system since I was too lazy to configure Allegro properly and X-Windows aren`t properly set on my system). Since game has no failure checks, it can crash this way.</p><p>Also I don`t know, if all compilers will understand definition of m[90][90]={} and clear entire array at startup, since I don`t know if such behavior is ANSI standard.</p><p>Well, if the reason is GFX_VGA, I`ll try to switch to GFX_AUTODETECT and 320x240x8, so it should run.</p><p>And thanks everybody for opinions and testing. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Thu, 05 Feb 2004 21:08:33 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Krzysztof: the X11 driver is default on my system, modes that the XWFS driver (does full screen X11 modes) can&#39;t handle get done by the XWIN driver (does windowed X11 modes).<br />and heres how I compiled: <b>g++ file.cpp -o file `allegro-config --libs`</b>. That resulted in an instant crash when run. (SIGSEGV)</p><p>edit: ouch, yeah, not checking set_gfx_mode for failure will result in a nice crash... maybe set to GFX_AUTODETECT...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Thomas Fjellstrom)</author>
		<pubDate>Thu, 05 Feb 2004 21:16:05 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>ouch, yeah, not checking set_gfx_mode for failure will result in a nice crash...</p></div></div><p>
Especially when using GFX_VGA, which is described in help as a DOS/Linux console mode and probably isn`t supposed to run under X. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /></p><p>Ok, I squeezed pit-falling routine a bit and managed to insert GFX_AUTODETECT. It should run now.</p><p>Of course the level has also changed a bit, but there are still 150 coins and all of them are available.</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;/*      Bartenstein 3D! by Krzysztof Kluczek (c) 2004     */</span></td></tr><tr><td class="number">2</td><td><span class="p">#include  &lt;math.h&gt;/*--        A complete 3D engine on one 80x25 screen        */</span></td></tr><tr><td class="number">3</td><td><span class="k1">typedef</span>  <span class="k1">int</span> i<span class="k2">;</span>i x,y,n,l,Q<span class="k3">=</span><span class="n">0</span>,j<span class="k2">[</span><span class="n">90</span><span class="k2">]</span><span class="k2">[</span><span class="n">90</span><span class="k2">]</span>,s<span class="k2">;</span><span class="k1">char</span> m<span class="k2">[</span><span class="n">90</span><span class="k2">]</span><span class="k2">[</span><span class="n">90</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="k2">}</span>,<span class="k3">*</span>g<span class="k3">=</span><span class="k2">(</span><span class="k1">char</span><span class="k3">*</span><span class="k2">)</span>m,<span class="k3">*</span>h<span class="k3">=</span>g,<span class="k3">*</span>k<span class="k3">=</span>g</td></tr><tr><td class="number">4</td><td>,<span class="k3">*</span>p<span class="k3">=</span>g<span class="k3">+</span><span class="n">1</span>,c<span class="k2">;</span><span class="k1">float</span> b,u,v,a,d,z<span class="k2">[</span><span class="n">320</span><span class="k2">]</span>,A<span class="k3">=</span><span class="n">0</span>,X<span class="k3">=</span><span class="n">1</span>.<span class="n">5</span>,Y<span class="k3">=</span><span class="n">1</span>.<span class="n">5</span>,q<span class="k2">[</span><span class="n">999</span><span class="k2">]</span><span class="k2">[</span><span class="n">9</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="k2">}</span>,<span class="k3">*</span>t<span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>w<span class="k2">;</span><a href="http://www.allegro.cc/manual/RGB" target="_blank"><span class="a">RGB</span></a> r<span class="k2">;</span></td></tr><tr><td class="number">5</td><td><span class="k1">void</span> cl<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>d<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_49.html" target="_blank">atan</a><span class="k2">(</span><span class="k2">(</span>x-160<span class="k2">)</span><span class="k3">/</span><span class="n">200</span>.<span class="k2">)</span><span class="k2">;</span>u<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="k3">+</span>d<span class="k2">)</span><span class="k2">;</span>v<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="k3">+</span>d<span class="k2">)</span><span class="k2">;</span>b<span class="k3">=</span><span class="n">50</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>d<span class="k2">)</span><span class="k3">+</span><span class="n">10</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>l<span class="k3">=</span>y<span class="k3">=</span><span class="n">100</span><span class="k2">;</span></td></tr><tr><td class="number">6</td><td>y&gt;0<span class="k2">;</span><span class="k2">)</span><span class="k2">{</span>c<span class="k3">=</span>y&gt;9?m<span class="k2">[</span>i<span class="k2">(</span>b<span class="k3">/</span>y<span class="k3">*</span>u<span class="k3">+</span>X<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>b<span class="k3">/</span>y<span class="k3">*</span>v<span class="k3">+</span>Y<span class="k2">)</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span><span class="k3">*</span><span class="k2">(</span>y<span class="k3">&amp;</span>~<span class="n">3</span><span class="k2">)</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span>c<span class="k3">+</span><span class="k3">+</span><span class="k3">&amp;</span><span class="n">7</span>?c<span class="k3">&amp;</span><span class="n">7</span>?<a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>w,x,<span class="n">99</span><span class="k3">+</span>y,<span class="n">99</span><span class="k3">+</span>l,c</td></tr><tr><td class="number">7</td><td><span class="k2">)</span>,<span class="n">0</span><span class="k2">:</span><span class="n">0</span>,<a href="http://www.allegro.cc/manual/putpixel" target="_blank"><span class="a">putpixel</span></a><span class="k2">(</span>w,x,<span class="n">100</span><span class="k3">-</span>y,c<span class="k2">)</span>,<span class="n">0</span><span class="k2">:</span><span class="k2">(</span>z<span class="k2">[</span>x<span class="k2">]</span><span class="k3">=</span>b<span class="k3">/</span>y,<a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>w,x,<span class="n">99</span><span class="k3">+</span>l,<span class="n">100</span><span class="k3">-</span>y,c<span class="k2">)</span>,y<span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>y--<span class="k2">;</span>l<span class="k3">=</span>c<span class="k3">&amp;</span><span class="n">7</span>?y</td></tr><tr><td class="number">8</td><td><span class="k2">:</span>l<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">void</span> sq<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>u<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>v<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="k1">for</span><span class="k2">(</span>l<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>l<span class="k3">&lt;</span>Q<span class="k2">;</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>t<span class="k3">=</span>q<span class="k2">[</span>l<span class="k2">]</span>,a<span class="k3">=</span>t<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">-</span>X,b<span class="k3">=</span>t<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">-</span>Y,t<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span></td></tr><tr><td class="number">9</td><td>a<span class="k3">*</span>u<span class="k3">+</span>b<span class="k3">*</span>v,t<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>b<span class="k3">*</span>u-a<span class="k3">*</span>v<span class="k2">;</span>u<span class="k3">=</span><span class="n">1E9</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>v<span class="k3">=</span><span class="n">0</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>Q<span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>a<span class="k3">=</span>q<span class="k2">[</span>x<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,v<span class="k3">&lt;</span>a<span class="k3">&amp;</span><span class="k3">&amp;</span>a<span class="k3">&lt;</span>u?l<span class="k3">=</span>x,v</td></tr><tr><td class="number">10</td><td><span class="k3">=</span>a:0<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>v<span class="k3">&lt;</span>.<span class="n">1</span><span class="k2">)</span><span class="k1">break</span><span class="k2">;</span>u<span class="k3">=</span>v<span class="k2">;</span>t<span class="k3">=</span>q<span class="k2">[</span>l<span class="k2">]</span><span class="k2">;</span>d<span class="k3">=</span><span class="n">160</span><span class="k3">+</span><span class="n">200</span><span class="k3">*</span>t<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">/</span>t<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span>a<span class="k3">=</span><span class="n">16</span><span class="k3">/</span>t<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>n<span class="k3">=</span><span class="k3">-</span>a<span class="k2">;</span>x<span class="k3">=</span>d<span class="k3">+</span>n,n<span class="k3">&lt;</span><span class="k3">=</span>a<span class="k2">;</span></td></tr><tr><td class="number">11</td><td>n<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">if</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">320</span><span class="k3">&amp;</span><span class="k3">&amp;</span>z<span class="k2">[</span>x<span class="k2">]</span><span class="k3">&gt;</span>t<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span>.<span class="n">3</span><span class="k2">)</span>y<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_738.html" target="_blank">sqrt</a><span class="k2">(</span>a<span class="k3">*</span>a-n<span class="k3">*</span>n<span class="k2">)</span>,<a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>w,x,<span class="n">99</span><span class="k3">-</span>y,<span class="n">100</span><span class="k3">+</span>y,<span class="n">251</span><span class="k3">-</span><span class="n">8</span><span class="k3">*</span>i<span class="k2">(</span>t<span class="k2">[</span></td></tr><tr><td class="number">12</td><td><span class="n">0</span><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>i cc<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>d<span class="k3">=</span><span class="n">0</span>.<span class="n">4</span><span class="k2">;</span><span class="k1">return</span> m<span class="k2">[</span>i<span class="k2">(</span>X-d<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y-d<span class="k2">)</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>m<span class="k2">[</span>i<span class="k2">(</span>X-d<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y<span class="k3">+</span>d<span class="k2">)</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>m<span class="k2">[</span>i<span class="k2">(</span>X<span class="k3">+</span>d<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y</td></tr><tr><td class="number">13</td><td><span class="k3">-</span>d<span class="k2">)</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>m<span class="k2">[</span>i<span class="k2">(</span>X<span class="k3">+</span>d<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y<span class="k3">+</span>d<span class="k2">)</span><span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> mv<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>X<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>u<span class="k3">=</span>a<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="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>cc<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>X-<span class="k3">=</span>u<span class="k2">;</span>Y<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>v<span class="k3">=</span>a<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></td></tr><tr><td class="number">14</td><td><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>cc<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>Y-<span class="k3">=</span>v<span class="k2">;</span><span class="k2">}</span>i 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>GFX_AUT\</td></tr><tr><td class="number">15</td><td>ODETECT,<span class="n">320</span>,<span class="n">200</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>w<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><a href="http://www.allegro.cc/manual/PACKFILE" target="_blank"><span class="a">PACKFILE</span></a> <span class="k3">*</span>f<span class="k3">=</span><a href="http://www.allegro.cc/manual/pack_fopen" target="_blank"><span class="a">pack_fopen</span></a><span class="k2">(</span>__FILE__,<span class="s">"\</span></td></tr><tr><td class="number">16</td><td><span class="s">r"</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/pack_fgets" target="_blank"><span class="a">pack_fgets</span></a><span class="k2">(</span>p<span class="k3">+</span><span class="k3">=</span><span class="n">90</span>,<span class="n">88</span>,f<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/pack_fclose" target="_blank"><span class="a">pack_fclose</span></a><span class="k2">(</span>f<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k2">;</span>g<span class="k3">&lt;</span>h<span class="k3">+</span><span class="n">8100</span><span class="k2">;</span>g<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">(</span><span class="k3">*</span>g<span class="k3">&amp;</span><span class="k3">=</span><span class="n">7</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">2</span>?j<span class="k2">[</span></td></tr><tr><td class="number">17</td><td>i<span class="k2">(</span>q<span class="k2">[</span>Q<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>g-k<span class="k2">)</span><span class="k3">/</span><span class="n">90</span><span class="k3">+</span>.<span class="n">5</span><span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>q<span class="k2">[</span>Q<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><span class="k2">(</span>g-k<span class="k2">)</span>%<span class="n">90</span><span class="k3">+</span>.<span class="n">5</span><span class="k2">)</span><span class="k2">]</span><span class="k3">=</span>Q<span class="k3">+</span><span class="k3">+</span><span class="k2">:</span><span class="n">0</span><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">256</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span>y<span class="k3">/</span><span class="n">4</span><span class="k2">;</span>r</td></tr><tr><td class="number">18</td><td>.r<span class="k3">=</span>y<span class="k3">&amp;</span><span class="n">1</span>?x:0<span class="k2">;</span>r.g<span class="k3">=</span>y<span class="k3">&amp;</span><span class="n">2</span>?x:0<span class="k2">;</span>r.b<span class="k3">=</span>y<span class="k3">&amp;</span><span class="n">4</span>?x:0<span class="k2">;</span><a href="http://www.allegro.cc/manual/set_color" target="_blank"><span class="a">set_color</span></a><span class="k2">(</span>y,<span class="k3">&amp;</span>r<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span> s<span class="k3">=</span>Q<span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>s<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></td></tr><tr><td class="number">19</td><td><span class="k2">{</span>g<span class="k3">=</span>m<span class="k2">[</span>i<span class="k2">(</span>X<span class="k2">)</span><span class="k2">]</span><span class="k3">+</span>i<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>g<span class="k3">=</span><span class="k3">=</span><span class="n">7</span><span class="k2">)</span><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">1740</span><span class="k2">;</span>y<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>y%<span class="n">30</span><span class="k2">)</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><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>w,<a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,</td></tr><tr><td class="number">20</td><td><span class="n">0</span>,<span class="n">199</span>,<span class="n">0</span>,<span class="n">199</span><span class="k3">-</span>y,<span class="n">320</span>,<span class="n">1</span><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><span class="k3">*</span>g<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span><span class="k3">*</span>g<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>s--<span class="k2">;</span>q<span class="k2">[</span>j<span class="k2">[</span>i<span class="k2">(</span>X<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y<span class="k2">)</span><span class="k2">]</span><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">9</span><span class="k2">;</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></td></tr><tr><td class="number">21</td><td>x<span class="k3">&lt;</span><span class="n">320</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>cl<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>sq<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>a<span class="k3">=</span><span class="n">0</span>.<span class="n">07</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>A-<span class="k3">=</span>a<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>a<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">22</td><td>KEY_UP<span class="k2">]</span><span class="k2">)</span>mv<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_DOWN<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>a<span class="k3">=</span><span class="k3">-</span>a<span class="k2">;</span>mv<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>u<span class="k3">=</span><span class="n">300</span><span class="k2">;</span>v<span class="k3">=</span><span class="n">20</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>w,u,v,u<span class="k3">+</span><span class="n">9</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>,v<span class="k3">+</span><span class="n">9</span><span class="k3">*</span>\</td></tr><tr><td class="number">23</td><td><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="n">254</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>w,u,v,<span class="n">255</span><span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>w,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">255</span>,<span class="s">"%d"</span>,s<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><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>w</td></tr><tr><td class="number">24</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">320</span>,<span class="n">200</span><span class="k2">)</span><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>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>,s?<span class="s">"Game Over"</span><span class="k2">:</span><span class="s">"You \</span></td></tr><tr><td class="number">25</td><td><span class="s">win!"</span>,<span class="n">124</span>,<span class="n">96</span>,<span class="n">255</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><span class="k2">;</span><span class="c">/* * * -----------------*/</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Thu, 05 Feb 2004 22:09:33 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>which is described in help as a DOS/Linux console mode and probably isn`t supposed to run under X. </p></div></div><p>
A linux console program &quot;can&quot; be launched from inside X... AFAIK. I just don&#39;t have any of the console drivers setup <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Thomas Fjellstrom)</author>
		<pubDate>Thu, 05 Feb 2004 22:14:57 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I don`t think, console drivers would expect the program changing graphics mode to VGA. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /></p><p>Anyway, is it running now? <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Thu, 05 Feb 2004 22:21:28 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ok, I&#39;ve squeezed my code even more and I was able to make some major improvements! I took some tips from marcello&#39;s code(replacing decimal numbers with variables). I replaced a non-portable number with it&#39;s proper GFX_OPENGL_WINDOWED. That means this code can now probably run under Linux, although I haven&#39;t tested. I&#39;ll test as soon as I can for all you Linux people, so expect more news. I also added END_OF_MAIN() for more comptablitiy and the types to a variable and main. The code now compiles under MinGW <i>and</i> MSVC. Attached is the entire package. The source for the 80x25 version, the source for the original source code(before squeezing), the batch file for building under MinGW(probably DJGPP as well), and an already built exe.</p><p>I hope this update will allow more people to play my game, especially Linux users, since Linux rules.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Fri, 06 Feb 2004 02:13:16 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ryan: Take out my comments and mine is smaller <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Fri, 06 Feb 2004 02:53:43 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Krzysztof Kluczek: Awesome game. I was able to compile it just fine(MinGW32). Very interesting how you used your own sourcecode as the map, heh. I wouldn&#39;t have imagined a raycaster would fit in 80x25, but I guess it does!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Fri, 06 Feb 2004 03:10:17 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Well, the competition is progressing nicely <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /><br />A clarification to the rules: You can&#39;t use external data. Apparently K.K has used his source code as the map? I&#39;ll allow that.</p><p>My own entry is currently being worked on... i.e. not started yet <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Goodbytes)</author>
		<pubDate>Fri, 06 Feb 2004 03:51:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Well, my program is a bit hacky raycaster since it only draws floors using base/y*cos() and base/y*sin() to determine tile position. If a tile contains a wall the rendering is ended and if it contains a pit rendering floor is delayed. As a result, rendering walls isn`t very much accurate especially at edges (it is possible to look through walls that have one common point, which true raycaster won`t allow).</p><p>Pit-falling routine is even more hacky since I`m just copying bottom screen line up the screen using such a speed, that it`s possible to see that something is moving but impossible to see how it is done. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>And I used source as a map since it`s the easiest way to be sure that all coins can be reached.</p><p>I think I`ll start working over my next 80x25 game. Multiple entries are allowed AFAIK. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>btw. Goodbytes, have you posted a news about this contest on Allegro.cc?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Fri, 06 Feb 2004 04:20:46 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Krzysztof Kluczek,</p><p>I get all types of Syntax errors when I try to compile your program in MSVC. It complains about a ton of stuff...</p><p>Complains about missing semicolons and newlines in constant strings, etc.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Radagar)</author>
		<pubDate>Fri, 06 Feb 2004 04:23:27 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Probably MSVC doesn`t understand escapes at the end of some lines (the only explain for unterminated string). Missing semicolons etc. could be results of error recovery after hitting that backslashes. I`ll try to fix that. This program compiles under gcc with only double-&gt;int conversion warnings.</p><p>(still you could change the file manually and join these escaped lines, just let it read from the old source)</p><p>edit: here`s the code without those backslashes:
</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;/*      Bartenstein 3D! by Krzysztof Kluczek (c) 2004     */</span></td></tr><tr><td class="number">2</td><td><span class="p">#include  &lt;math.h&gt;/*--        A complete 3D engine on one 80x25 screen        */</span></td></tr><tr><td class="number">3</td><td><span class="k1">typedef</span> <span class="k1">int</span> i<span class="k2">;</span> i x,y,n,l,Q<span class="k3">=</span><span class="n">0</span>,j<span class="k2">[</span><span class="n">90</span><span class="k2">]</span><span class="k2">[</span><span class="n">90</span><span class="k2">]</span>,s<span class="k2">;</span><span class="k1">char</span> m<span class="k2">[</span><span class="n">90</span><span class="k2">]</span><span class="k2">[</span><span class="n">90</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="k2">}</span>,<span class="k3">*</span>g<span class="k3">=</span><span class="k2">(</span><span class="k1">char</span><span class="k3">*</span><span class="k2">)</span>m,<span class="k3">*</span>h<span class="k3">=</span>g,<span class="k3">*</span>k<span class="k3">=</span>g</td></tr><tr><td class="number">4</td><td>,<span class="k3">*</span>p<span class="k3">=</span>g<span class="k3">+</span><span class="n">1</span>,c<span class="k2">;</span> <span class="k1">float</span> b,u,v,a,d,z<span class="k2">[</span><span class="n">320</span><span class="k2">]</span>,A<span class="k3">=</span><span class="n">0</span>,X<span class="k3">=</span><span class="n">1</span>.<span class="n">5</span>,Y<span class="k3">=</span><span class="n">1</span>.<span class="n">5</span>,q<span class="k2">[</span><span class="n">999</span><span class="k2">]</span><span class="k2">[</span><span class="n">9</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="k2">}</span>,<span class="k3">*</span>t<span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>w<span class="k2">;</span><a href="http://www.allegro.cc/manual/RGB" target="_blank"><span class="a">RGB</span></a> r</td></tr><tr><td class="number">5</td><td><span class="k2">;</span><span class="k1">void</span> cl<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>d<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_49.html" target="_blank">atan</a><span class="k2">(</span><span class="k2">(</span>x   <span class="k3">-</span><span class="n">160</span><span class="k2">)</span><span class="k3">/</span><span class="n">200</span>.<span class="k2">)</span><span class="k2">;</span>u<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="k3">+</span>d<span class="k2">)</span><span class="k2">;</span>v<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="k3">+</span>d<span class="k2">)</span><span class="k2">;</span>b<span class="k3">=</span><span class="n">50</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>d<span class="k2">)</span><span class="k3">+</span><span class="n">10</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>l<span class="k3">=</span>y<span class="k3">=</span></td></tr><tr><td class="number">6</td><td><span class="n">100</span><span class="k2">;</span>y&gt;0<span class="k2">;</span><span class="k2">)</span><span class="k2">{</span>c<span class="k3">=</span>y&gt;9?m<span class="k2">[</span>i<span class="k2">(</span>b<span class="k3">/</span>y<span class="k3">*</span>u<span class="k3">+</span>X<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>b<span class="k3">/</span>y<span class="k3">*</span>v<span class="k3">+</span>Y<span class="k2">)</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span><span class="k3">*</span><span class="k2">(</span>y<span class="k3">&amp;</span>~<span class="n">3</span><span class="k2">)</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span>c<span class="k3">+</span><span class="k3">+</span><span class="k3">&amp;</span><span class="n">7</span>?c<span class="k3">&amp;</span><span class="n">7</span>?<a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>w,x,<span class="n">99</span><span class="k3">+</span>y,<span class="n">99</span></td></tr><tr><td class="number">7</td><td><span class="k3">+</span>l,c<span class="k2">)</span>,<span class="n">0</span><span class="k2">:</span><span class="n">0</span>,<a href="http://www.allegro.cc/manual/putpixel" target="_blank"><span class="a">putpixel</span></a><span class="k2">(</span>w,x,<span class="n">100</span><span class="k3">-</span>y,c<span class="k2">)</span>,<span class="n">0</span><span class="k2">:</span><span class="k2">(</span>z<span class="k2">[</span>x<span class="k2">]</span><span class="k3">=</span>b<span class="k3">/</span>y,<a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>w,x,<span class="n">99</span><span class="k3">+</span>l,<span class="n">100</span><span class="k3">-</span>y,c<span class="k2">)</span>,y<span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>y--<span class="k2">;</span>l<span class="k3">=</span>c</td></tr><tr><td class="number">8</td><td><span class="k3">&amp;</span><span class="n">7</span>?y:l<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">void</span> sq<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>u<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>v<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="k1">for</span><span class="k2">(</span>l<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>l<span class="k3">&lt;</span>Q<span class="k2">;</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>t<span class="k3">=</span>q<span class="k2">[</span>l<span class="k2">]</span>,a<span class="k3">=</span>t<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">-</span>X,b<span class="k3">=</span>t<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">-</span>Y,t</td></tr><tr><td class="number">9</td><td><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span>a<span class="k3">*</span>u<span class="k3">+</span>b<span class="k3">*</span>v,t<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>b<span class="k3">*</span>u-a<span class="k3">*</span>v<span class="k2">;</span>u<span class="k3">=</span><span class="n">1E9</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>v<span class="k3">=</span><span class="n">0</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>Q<span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>a<span class="k3">=</span>q<span class="k2">[</span>x<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,v<span class="k3">&lt;</span>a<span class="k3">&amp;</span><span class="k3">&amp;</span>a<span class="k3">&lt;</span>u?l</td></tr><tr><td class="number">10</td><td><span class="k3">=</span>x,v<span class="k3">=</span>a:0<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>v<span class="k3">&lt;</span>.<span class="n">1</span><span class="k2">)</span><span class="k1">break</span><span class="k2">;</span>u<span class="k3">=</span>v<span class="k2">;</span>t<span class="k3">=</span>q<span class="k2">[</span>l<span class="k2">]</span><span class="k2">;</span>d<span class="k3">=</span><span class="n">160</span><span class="k3">+</span><span class="n">200</span><span class="k3">*</span>t<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">/</span>t<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span>a<span class="k3">=</span><span class="n">16</span><span class="k3">/</span>t<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>n<span class="k3">=</span><span class="k3">-</span>a<span class="k2">;</span>x<span class="k3">=</span>d<span class="k3">+</span>n,n</td></tr><tr><td class="number">11</td><td><span class="k3">&lt;</span><span class="k3">=</span>a<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>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">320</span><span class="k3">&amp;</span><span class="k3">&amp;</span>z<span class="k2">[</span>x<span class="k2">]</span><span class="k3">&gt;</span>t<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span>.<span class="n">3</span><span class="k2">)</span>y<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_738.html" target="_blank">sqrt</a><span class="k2">(</span>a<span class="k3">*</span>a-n<span class="k3">*</span>n<span class="k2">)</span>,<a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>w,x,<span class="n">99</span><span class="k3">-</span>y,<span class="n">100</span><span class="k3">+</span>y,<span class="n">251</span><span class="k3">-</span><span class="n">8</span><span class="k3">*</span></td></tr><tr><td class="number">12</td><td>i<span class="k2">(</span>t<span class="k2">[</span><span class="n">0</span><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>i cc<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>d<span class="k3">=</span><span class="n">0</span>.<span class="n">4</span><span class="k2">;</span><span class="k1">return</span> m<span class="k2">[</span>i<span class="k2">(</span>X-d<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y-d<span class="k2">)</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>m<span class="k2">[</span>i<span class="k2">(</span>X-d<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y<span class="k3">+</span>d<span class="k2">)</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>m<span class="k2">[</span>i<span class="k2">(</span>X<span class="k3">+</span>d<span class="k2">)</span><span class="k2">]</span></td></tr><tr><td class="number">13</td><td><span class="k2">[</span>i<span class="k2">(</span>Y-d<span class="k2">)</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>m<span class="k2">[</span>i<span class="k2">(</span>X<span class="k3">+</span>d<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y<span class="k3">+</span>d<span class="k2">)</span><span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> mv<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>X<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>u<span class="k3">=</span>a<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="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>cc<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>X-<span class="k3">=</span>u<span class="k2">;</span>Y<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>v<span class="k3">=</span>a<span class="k3">*</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a></td></tr><tr><td class="number">14</td><td><span class="k2">(</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="k3">!</span>cc<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>Y-<span class="k3">=</span>v<span class="k2">;</span><span class="k2">}</span>i 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><span class="c">/**/</span></td></tr><tr><td class="number">15</td><td>GFX_AUTODETECT,<span class="n">320</span>,<span class="n">200</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>w<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><a href="http://www.allegro.cc/manual/PACKFILE" target="_blank"><span class="a">PACKFILE</span></a> <span class="k3">*</span>f<span class="k3">=</span><a href="http://www.allegro.cc/manual/pack_fopen" target="_blank"><span class="a">pack_fopen</span></a><span class="k2">(</span><span class="c">/**/</span></td></tr><tr><td class="number">16</td><td>__FILE__,<span class="s">"r"</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/pack_fgets" target="_blank"><span class="a">pack_fgets</span></a><span class="k2">(</span>p<span class="k3">+</span><span class="k3">=</span><span class="n">90</span>,<span class="n">88</span>,f<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/pack_fclose" target="_blank"><span class="a">pack_fclose</span></a><span class="k2">(</span>f<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k2">;</span>g<span class="k3">&lt;</span>h<span class="k3">+</span><span class="n">8100</span><span class="k2">;</span>g<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">(</span><span class="k3">*</span>g</td></tr><tr><td class="number">17</td><td><span class="k3">&amp;</span><span class="k3">=</span><span class="n">7</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span><span class="n">2</span>?j<span class="k2">[</span>i<span class="k2">(</span>q<span class="k2">[</span>Q<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>g-k<span class="k2">)</span><span class="k3">/</span><span class="n">90</span><span class="k3">+</span>.<span class="n">5</span><span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>q<span class="k2">[</span>Q<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><span class="k2">(</span>g-k<span class="k2">)</span>%<span class="n">90</span><span class="k3">+</span>.<span class="n">5</span><span class="k2">)</span><span class="k2">]</span><span class="k3">=</span>Q<span class="k3">+</span><span class="k3">+</span><span class="k2">:</span><span class="n">0</span><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">256</span> <span class="k2">;</span>y</td></tr><tr><td class="number">18</td><td><span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span>y<span class="k3">/</span><span class="n">4</span><span class="k2">;</span>r.r<span class="k3">=</span>y<span class="k3">&amp;</span><span class="n">1</span>?x:0<span class="k2">;</span>r.g<span class="k3">=</span>y<span class="k3">&amp;</span><span class="n">2</span>?x:0<span class="k2">;</span>r.b<span class="k3">=</span>y<span class="k3">&amp;</span><span class="n">4</span>?x:0<span class="k2">;</span><a href="http://www.allegro.cc/manual/set_color" target="_blank"><span class="a">set_color</span></a><span class="k2">(</span>y,<span class="k3">&amp;</span>r<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>s<span class="k3">=</span>Q<span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>s<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></td></tr><tr><td class="number">19</td><td><span class="k2">[</span>KEY_ESC<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>g<span class="k3">=</span>m<span class="k2">[</span>i<span class="k2">(</span>X<span class="k2">)</span><span class="k2">]</span><span class="k3">+</span>i<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>g<span class="k3">=</span><span class="k3">=</span><span class="n">7</span><span class="k2">)</span><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">1740</span><span class="k2">;</span>y<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>y%<span class="n">30</span><span class="k2">)</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><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></td></tr><tr><td class="number">20</td><td>w,<a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,<span class="n">199</span>,<span class="n">0</span>,<span class="n">199</span><span class="k3">-</span>y,<span class="n">320</span>,<span class="n">1</span><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><span class="k3">*</span>g<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span><span class="k2">{</span><span class="k3">*</span>g<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>s--<span class="k2">;</span>q<span class="k2">[</span>j<span class="k2">[</span>i<span class="k2">(</span>X<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y<span class="k2">)</span><span class="k2">]</span><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">9</span><span class="k2">;</span></td></tr><tr><td class="number">21</td><td><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">320</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>cl<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>sq<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>a<span class="k3">=</span><span class="n">0</span>.<span class="n">07</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>A-<span class="k3">=</span>a<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>a</td></tr><tr><td class="number">22</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_UP<span class="k2">]</span><span class="k2">)</span>mv<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_DOWN<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>a<span class="k3">=</span><span class="k3">-</span>a<span class="k2">;</span>mv<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>u<span class="k3">=</span><span class="n">300</span><span class="k2">;</span>v<span class="k3">=</span><span class="n">20</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>w,u,v,u<span class="k3">+</span><span class="n">9</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></td></tr><tr><td class="number">23</td><td>A<span class="k2">)</span>,v<span class="k3">+</span><span class="n">9</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="n">254</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>w,u,v,<span class="n">255</span><span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>w,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">255</span>,<span class="s">"%d"</span>,s<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">24</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>w,<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="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>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>,s?<span class="s">"Game Over"</span></td></tr><tr><td class="number">25</td><td><span class="k2">:</span><span class="s">"You win!"</span>,<span class="n">124</span>,<span class="n">96</span>,<span class="n">255</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><span class="k2">;</span><span class="c">//------------------</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Fri, 06 Feb 2004 04:32:45 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I use backslashes in my most recent code, and that compiled under MSVC &amp; MinGW32...so not sure why your code wouldn&#39;t compile.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Fri, 06 Feb 2004 05:15:55 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Nothing special.</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; /* this be made by lsd */</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;mem.h&gt;</span></td></tr><tr><td class="number">3</td><td><span class="k1">bool</span> IsAround<span class="k2">(</span><span class="k1">int</span> x1, <span class="k1">int</span> y1, <span class="k1">int</span> x2, <span class="k1">int</span> y2, <span class="k1">int</span> tol<span class="k2">)</span></td></tr><tr><td class="number">4</td><td><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>x1<span class="k3">+</span>tol&gt;x2 <span class="k3">&amp;</span><span class="k3">&amp;</span> x1-tol<span class="k3">&lt;</span>x2<span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k2">(</span>y1<span class="k3">+</span>tol&gt;y2 <span class="k3">&amp;</span><span class="k3">&amp;</span> y1-tol<span class="k3">&lt;</span>y2<span class="k2">)</span><span class="k2">)</span> <span class="k1">return</span> <span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">5</td><td><span class="k1">return</span> <span class="k1">false</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> main<span class="k2">(</span><span class="k1">void</span><span class="k2">)</span></td></tr><tr><td class="number">6</td><td><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">16</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></td></tr><tr><td class="number">7</td><td><a href="http://www.allegro.cc/manual/install_mouse" target="_blank"><span class="a">install_mouse</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">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>GFX_AUTODETECT, <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/alert" target="_blank"><span class="a">alert</span></a><span class="k2">(</span><span class="s">"Kill the circles"</span>,</td></tr><tr><td class="number">9</td><td><span class="s">"don't let them go off-screen"</span>, <span class="s">"'kay?"</span>,<span class="s">"OK"</span>,<span class="n">0</span>,<span class="s">'o'</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">10</td><td><span class="k1">int</span> posx<span class="k2">[</span><span class="n">16</span><span class="k2">]</span><span class="k2">;</span> <span class="k1">int</span> posy<span class="k2">[</span><span class="n">16</span><span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">11</td><td><span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">16</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>posx<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">320</span><span class="k2">;</span>posy<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">240</span><span class="k2">;</span><span class="k2">}</span><span class="k1">int</span> score<span class="k3">=</span><span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">12</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>buf<span class="k3">=</span><a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span><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>clear<span class="k2">(</span>buf<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">13</td><td><span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">16</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span></td></tr><tr><td class="number">14</td><td><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>buf, posx<span class="k3">&lt;</span>i&gt;, posy<span class="k3">&lt;</span>i&gt;, <span class="n">8</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">4</span><span class="k2">)</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</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">230</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">78</span><span class="k2">)</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/triangle" target="_blank"><span class="a">triangle</span></a><span class="k2">(</span>buf, <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>, <a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k3">+</span><span class="n">10</span>,</td></tr><tr><td class="number">16</td><td><a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</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="k3">+</span><span class="n">20</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">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">17</td><td>textprintf<span class="k2">(</span>buf, <a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">0</span>,<span class="n">0</span>, <a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span>,<span class="s">"Score: %d"</span>, score<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>buf, <a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, <span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">640</span>, <span class="n">480</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">16</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">19</td><td><span class="k1">if</span><span class="k2">(</span>posx<span class="k3">&lt;</span>i&gt;&gt;640 <span class="k3">|</span><span class="k3">|</span> posx<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> posy<span class="k3">&lt;</span>i&gt;&gt;480 <span class="k3">|</span><span class="k3">|</span> posy<span class="k3">&lt;</span>i&gt;<span class="k3">&lt;</span><span class="n">0</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/alert" target="_blank"><span class="a">alert</span></a><span class="k2">(</span><span class="n">0</span>,<span class="s">"Game over, man, game over!"</span>,</td></tr><tr><td class="number">21</td><td><span class="s">"http://inercia.dcc.online.pt/scene.org/parties/1999/antiq99/mmul/gover99.zip"</span>,</td></tr><tr><td class="number">22</td><td><span class="s">"OK"</span>,<span class="n">0</span>,<span class="s">'o'</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">return</span><span class="k2">;</span><span class="k2">}</span>posx<span class="k3">&lt;</span>i&gt;<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><span class="n">5</span><span class="k2">;</span>posy<span class="k3">&lt;</span>i&gt;<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><span class="n">5</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">23</td><td><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="k1">for</span><span class="k2">(</span><span class="k1">int</span> i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>i<span class="k3">&lt;</span><span class="n">16</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">24</td><td><span class="k1">if</span><span class="k2">(</span>IsAround<span class="k2">(</span>posx<span class="k3">&lt;</span>i&gt;, posy<span class="k3">&lt;</span>i&gt;, <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">10</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>posx<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">320</span><span class="k2">;</span> posy<span class="k3">&lt;</span>i&gt;<span class="k3">=</span><span class="n">240</span><span class="k2">;</span></td></tr><tr><td class="number">25</td><td>score<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="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>

you only need to hold the mouse button, it&#39;s better that way.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (LSd016)</author>
		<pubDate>Fri, 06 Feb 2004 06:05:17 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>LSd016: It complained about the mem.h not being found, but when that include was removed it compiled fine.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Freke)</author>
		<pubDate>Fri, 06 Feb 2004 06:23:51 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>you only need to hold the mouse button, it&#39;s better that way.</p></div></div><p>
Especially if your mouse pointer is in the middle of the screen. I`ve got 5107 that way. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /></p><p>I compiled it under DJGPP and it complained about return without a value. I fixed it and everything else is ok. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Fri, 06 Feb 2004 06:40:11 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Freke: You got a strange compiler, I thought mem* functions had always been in mem.h.</p><p>[edit]</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Especially if your mouse pointer is in the middle of the screen. I`ve got 5107 that way.
</p></div></div><p>

But you can&#39;t go with this forever. Anyway, maybe I&#39;ll make something better tomorrow.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (LSd016)</author>
		<pubDate>Fri, 06 Feb 2004 06:40:43 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>DJGPP libc help says, mem* are in &lt;string.h&gt;<br />(mem.h still works fine on my compiler)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Fri, 06 Feb 2004 06:45:15 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>http://www.shippysite.com/screen2.gif<br />YES!  I got bliggity blam down to 1337 bytes (would be a little bit less on linux).<br />OH AND BY THE WYA CGAMESPLAY, my code is now way smaller than yours (without comments) <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" /></p><p><b>UPDATE</b> I just realized that this game is only 20 lines, so it would qualify for that 20 line compo too.</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 circlefill(screen</span></td></tr><tr><td class="number">3</td><td><span class="p">#define R rectfill(screen</span></td></tr><tr><td class="number">4</td><td><span class="p">#define F textprintf(screen,font,0</span></td></tr><tr><td class="number">5</td><td><span class="k1">struct</span> B<span class="k2">{</span><span class="k1">int</span> x,u<span class="k2">;</span><span class="k1">double</span> y<span class="k2">;</span><span class="k2">}</span>z<span class="k2">[</span><span class="n">150</span><span class="k2">]</span><span class="k2">;</span>main<span class="k2">(</span><span class="k1">int</span> d,<span class="k1">char</span><span class="k3">*</span><span class="k3">*</span>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>z,<span class="n">0</span>,<span class="k1">sizeof</span><span class="k2">(</span><span class="k1">struct</span></td></tr><tr><td class="number">6</td><td>B<span class="k2">)</span><span class="k3">*</span><span class="n">150</span><span class="k2">)</span><span class="k2">;</span><span class="k1">double</span> q<span class="k3">=</span><span class="n">160</span>,Z<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">int</span> s<span class="k3">=</span><span class="n">0</span>,r<span class="k3">=</span><span class="n">200</span>,Q<span class="k3">=</span><span class="n">40</span>,D<span class="k3">=</span><span class="n">20</span>,P<span class="k3">=</span><span class="n">160</span>,p<span class="k3">=</span><span class="n">3</span>,f<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></td></tr><tr><td class="number">7</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_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_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_AUTODETECT,<span class="n">320</span>,<span class="n">200</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">8</td><td><span class="k1">while</span><span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_ESC<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>R,<span class="n">0</span>,<span class="n">0</span>,<span class="n">319</span>,<span class="n">40</span>,<span class="n">8</span><span class="k2">)</span><span class="k2">;</span>R,<span class="n">0</span>,<span class="n">40</span>,<span class="n">319</span>,<span class="n">199</span>,<span class="n">2</span><span class="k2">)</span><span class="k2">;</span>F,<span class="n">0</span>,<span class="n">15</span>,<span class="s">"%i"</span>,s<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span>q<span class="k3">&lt;</span></td></tr><tr><td class="number">9</td><td>r-Z<span class="k2">)</span>q<span class="k3">+</span><span class="k3">=</span>Z<span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span>q&gt;r<span class="k3">+</span>Z<span class="k2">)</span>q-<span class="k3">=</span>Z<span class="k2">;</span><span class="k1">else</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>%<span class="n">320</span><span class="k2">;</span>Z<span class="k3">+</span><span class="k3">=</span>.<span class="n">0005</span><span class="k2">;</span>Q<span class="k3">=</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span><span class="k2">(</span><span class="k1">double</span><span class="k2">)</span><span class="k2">(</span><span class="n">60</span><span class="k3">/</span></td></tr><tr><td class="number">10</td><td>Z<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>R,q-6,<span class="n">12</span>,q<span class="k3">+</span><span class="n">6</span>,<span class="n">36</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>C,q,<span class="n">16</span>,<span class="n">8</span>,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span>C,q-3,<span class="n">16</span>,<span class="n">2</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>C,q<span class="k3">+</span><span class="n">3</span>,<span class="n">16</span>,<span class="n">2</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>R,q-10,<span class="n">8</span>,q<span class="k3">+</span><span class="n">10</span>,<span class="n">12</span></td></tr><tr><td class="number">11</td><td>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>R,q-5,<span class="n">4</span>,q<span class="k3">+</span><span class="n">5</span>,<span class="n">8</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>d<span class="k3">&lt;</span>p<span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>d<span class="k2">)</span>R,P-10,<span class="n">175</span><span class="k3">-</span><span class="k2">(</span>d<span class="k3">*</span><span class="n">10</span><span class="k2">)</span>,P<span class="k3">+</span><span class="n">9</span>,<span class="n">180</span><span class="k3">-</span><span class="k2">(</span>d<span class="k3">*</span><span class="n">10</span><span class="k2">)</span>,<span class="n">15</span><span class="k2">)</span><span class="k2">;</span>P<span class="k3">=</span></td></tr><tr><td class="number">12</td><td><a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>P<span class="k3">&lt;</span><span class="n">10</span><span class="k2">)</span>P<span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>P&gt;310<span class="k2">)</span>P<span class="k3">=</span><span class="n">310</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>d<span class="k3">&lt;</span><span class="n">150</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>z<span class="k2">[</span>d<span class="k2">]</span>.u&gt;0<span class="k2">)</span><span class="k2">{</span>z<span class="k2">[</span>d<span class="k2">]</span>.y<span class="k3">+</span><span class="k3">=</span>Z<span class="k3">/</span><span class="n">2</span><span class="k2">;</span></td></tr><tr><td class="number">13</td><td>C,z<span class="k2">[</span>d<span class="k2">]</span>.x,z<span class="k2">[</span>d<span class="k2">]</span>.y,<span class="n">4</span>,<span class="n">0</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,z<span class="k2">[</span>d<span class="k2">]</span>.x<span class="k3">+</span><span class="n">3</span>,z<span class="k2">[</span>d<span class="k2">]</span>.y-3,z<span class="k2">[</span>d<span class="k2">]</span>.x<span class="k3">+</span><span class="n">5</span>,z<span class="k2">[</span>d<span class="k2">]</span>.y-5,<span class="n">15</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></td></tr><tr><td class="number">14</td><td><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,z<span class="k2">[</span>d<span class="k2">]</span>.x<span class="k3">+</span><span class="n">5</span>,z<span class="k2">[</span>d<span class="k2">]</span>.y-5,z<span class="k2">[</span>d<span class="k2">]</span>.x<span class="k3">+</span><span class="n">5</span><span class="k3">+</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">4</span><span class="k2">)</span><span class="k3">-</span><span class="n">2</span><span class="k2">)</span>,z<span class="k2">[</span>d<span class="k2">]</span>.y-5<span class="k3">+</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">4</span><span class="k2">)</span><span class="k3">-</span><span class="n">2</span><span class="k2">)</span>,<span class="n">14</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span></td></tr><tr><td class="number">15</td><td>z<span class="k2">[</span>d<span class="k2">]</span>.y&gt;199<span class="k2">)</span><span class="k2">{</span>z<span class="k2">[</span>d<span class="k2">]</span>.u<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k3">-</span><span class="k3">-</span>p<span class="k2">;</span>q<span class="k3">=</span><span class="n">160</span><span class="k2">;</span>Z<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>r<span class="k3">=</span><span class="n">200</span><span class="k2">;</span>Q<span class="k3">=</span><span class="n">40</span><span class="k2">;</span>D<span class="k3">=</span><span class="n">20</span><span class="k2">;</span>f<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>P<span class="k3">=</span><span class="n">160</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>z,<span class="n">0</span>,<span class="k1">sizeof</span><span class="k2">(</span></td></tr><tr><td class="number">16</td><td><span class="k1">struct</span> B<span class="k2">)</span><span class="k3">*</span><span class="n">150</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>z<span class="k2">[</span>d<span class="k2">]</span>.y&gt;<span class="k3">=</span><span class="n">178</span><span class="k3">-</span>p<span class="k3">*</span><span class="n">10</span><span class="k3">&amp;</span><span class="k3">&amp;</span>z<span class="k2">[</span>d<span class="k2">]</span>.y<span class="k3">&lt;</span><span class="k3">=</span><span class="n">182</span><span class="k3">&amp;</span><span class="k3">&amp;</span>z<span class="k2">[</span>d<span class="k2">]</span>.x&gt;<span class="k3">=</span>P-12<span class="k3">&amp;</span><span class="k3">&amp;</span>z<span class="k2">[</span>d<span class="k2">]</span>.x<span class="k3">&lt;</span><span class="k3">=</span>P<span class="k3">+</span></td></tr><tr><td class="number">17</td><td><span class="n">12</span><span class="k2">)</span><span class="k2">{</span>z<span class="k2">[</span>d<span class="k2">]</span>.u<span class="k3">=</span><span class="k3">-</span><span class="n">5</span><span class="k2">;</span>s<span class="k3">+</span><span class="k3">=</span><span class="n">50</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>z<span class="k2">[</span>d<span class="k2">]</span>.u<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>C,z<span class="k2">[</span>d<span class="k2">]</span>.x,z<span class="k2">[</span>d<span class="k2">]</span>.y,<span class="k3">-</span>z<span class="k2">[</span>d<span class="k2">]</span>.u,<span class="n">12</span><span class="k2">)</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>z<span class="k2">[</span>d<span class="k2">]</span>.u<span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">18</td><td><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>f&gt;<span class="k3">=</span>Q<span class="k3">+</span>D<span class="k2">)</span><span class="k2">{</span>z<span class="k2">[</span>d<span class="k2">]</span>.u<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>z<span class="k2">[</span>d<span class="k2">]</span>.x<span class="k3">=</span>q<span class="k2">;</span>z<span class="k2">[</span>d<span class="k2">]</span>.y<span class="k3">=</span><span class="n">16</span><span class="k2">;</span>f<span class="k3">=</span><span class="n">0</span><span class="k2">;</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>%Q<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>p<span class="k3">&lt;</span><span class="n">1</span><span class="k2">)</span><span class="k1">break</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>f<span class="k2">;</span></td></tr><tr><td class="number">19</td><td><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>F,<span class="n">99</span>,<span class="n">15</span>,<span class="s">"FINAL: %i! PRESS SPACE!"</span>,s<span class="k2">)</span><span class="k2">;</span><span class="k1">while</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="k3">&gt;</span><span class="k3">&gt;</span><span class="n">8</span><span class="k3">!</span><span class="k3">=</span>KEY_SPACE<span class="k2">)</span><span class="k2">{</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/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 (Ryan Broomfield)</author>
		<pubDate>Fri, 06 Feb 2004 07:36:07 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>The only thing I can say, is if you are still running into size problems, couldn&#39;t you make your code smaller (on the screen, anyway) by preresolving all of the constants?  Also, why not add the comma in your circlefill, rectfill, and text printf functions up above?  That way you are only using one comma, instead of one occurance of a comma every function call... (besides, you have tons of room up above by your compiler command things (sorry, can&#39;t remember exact term right now, oy...))... heck, you could even through in a semicolon to the beginning of you compiler define, so it looks like...</p><div class="source-code snippet"><div class="inner"><pre><span class="p">#define C ;circlefill(screen,</span>
</pre></div></div><p>

Think of all that wonderful space you are saving! (True, this wouldn&#39;t necessaryily work, but it should in theory.)</p><p>EDIT--- heck, if compiler defines worked that way, you could do something like</p><div class="source-code snippet"><div class="inner"><pre><span class="p">#define db double</span>
<span class="p">#define el else</span>
<span class="p">#define f if (</span>
<span class="p">#define ei else if</span>
</pre></div></div><p>

but then again, you would be lengthening the program by doing that... too bad you can&#39;t stack preprocessor commands...</p><p>I'm dumb!... this could get real interesting
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Carrus85)</author>
		<pubDate>Fri, 06 Feb 2004 09:05:18 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Carrus: It would work better with macros, but since #defines waste a whole line each I&#39;d use function pointers instead <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (gnolam)</author>
		<pubDate>Fri, 06 Feb 2004 19:29:20 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>You don&#39;t have to waste a full line with #defines. Just see how I used them, both #defines are about 80 characters.</p><p>It worked like this:
</p><div class="source-code snippet"><div class="inner"><pre><span class="p">#define A(x,y,z) z?long_func_1(x,y):long_func_2(x,y)</span>
</pre></div></div><p>
Of course, the extra z param wastes some space, but for me I saved quite some lines with it <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Elias)</author>
		<pubDate>Fri, 06 Feb 2004 19:39:29 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>OK, how about an &quot;official&quot; compo? Someone should put up a website with the rules, and some way (e-mail or upload) to submit entries...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Tobias Dammers)</author>
		<pubDate>Fri, 06 Feb 2004 21:58:30 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I think by the time that is done, everyone will be bored of this.  Why need an official compo to something that really only takes a few hours?</p><p>Marcello
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Marcello)</author>
		<pubDate>Fri, 06 Feb 2004 22:05:51 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Well, I have a lot of things to do (I&#39;m so lazy::)) but if nobody else wants, I can do a &#39;ScreenHack site&#39;.</p><p>It won&#39;t be a compo as SpeedHack or TINS or BlithzHack, but it will be a site with lots of multi-platform games that fits in a 25x80 characters screen.</p><p>I&#39;ll get the better games from this thread and put him in to the site with links to the websites and mails of the authors and compile them in zip files. And I&#39;ll put an e-mail so anybody can send me his creations.</p><p>[edit]Uh... &#39;ScreenHack&#39; wouldn&#39;t be a cool name for this site, since it will not be a compo.</p><ul><li><p>ScreenHack </p></li><li><p>Screen-games </p></li><li><p>MicroGames</p></li><li><p>AlleScreen</p></li><li><p>Micro-screen Games</p></li><li><p>...</p></li></ul><p>

Most of them has a lot of Google/Yahoo/Lycos/Terra entries...<br />Any other sugestion?<br />Please?<br />[/edit]
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Niunio)</author>
		<pubDate>Fri, 06 Feb 2004 23:38:57 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I don&#39;t see the problem with naming it screenhack.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Sat, 07 Feb 2004 00:08:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Well, I was wondering that somebody would <i>confuse</i> the names:</p><p>ScreenHack-SpeedHack...</p><p>Ok, ok, forget it. The name will be ScreenHack.</p><p>I&#39;ll start just now.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Niunio)</author>
		<pubDate>Sat, 07 Feb 2004 00:16:06 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I actually have no idea if this program works.<br />I&#39;m at work and I can&#39;t build it, I know there aren&#39;t any errors though!.
</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 maxEnemies  5</span></td></tr><tr><td class="number">3</td><td><span class="k1">int</span> psRand<span class="k3">=</span><span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">4</td><td><span class="k1">class</span> enemy<span class="k2">{</span>public:int x,y<span class="k2">;</span><span class="k2">}</span><span class="k2">;</span></td></tr><tr><td class="number">5</td><td><span class="k1">int</span> main<span class="k2">(</span><span class="k1">void</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">6</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></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, <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></td></tr><tr><td class="number">8</td><td><span class="k1">int</span> myX<span class="k3">=</span><span class="n">160</span>, myY<span class="k3">=</span><span class="n">120</span>,score<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>enemy en<span class="k2">[</span>maxEnemies<span class="k2">]</span><span class="k2">;</span> <span class="k1">bool</span> end <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span></td></tr><tr><td class="number">9</td><td><span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> w<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>w<span class="k3">&lt;</span>maxEnemies<span class="k2">;</span>w<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>en<span class="k2">[</span>w<span class="k2">]</span>.x<span class="k3">=</span>psRand<span class="k2">;</span>en<span class="k2">[</span>w<span class="k2">]</span>.y<span class="k3">=</span>psRand<span class="k2">;</span>psRand<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">10</td><td><span class="k1">while</span><span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_ESC<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">11</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> myX--<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_RIGHT<span class="k2">]</span><span class="k2">)</span> myX<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">12</td><td><span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_UP<span class="k2">]</span><span class="k2">)</span> myY--<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="k2">)</span> myY<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span></td></tr><tr><td class="number">13</td><td><a href="http://www.allegro.cc/manual/clear_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><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></td></tr><tr><td class="number">14</td><td><a href="http://www.allegro.cc/manual/putpixel" target="_blank"><span class="a">putpixel</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>, myX, myY, <span class="n">5</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">15</td><td><span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> q<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>q<span class="k3">&lt;</span>maxEnemies<span class="k2">;</span>q<span class="k3">+</span><span class="k3">+</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><a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,en<span class="k2">[</span>q<span class="k2">]</span>.x,en<span class="k2">[</span>q<span class="k2">]</span>.y,<span class="n">100</span><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>myX&gt;en<span class="k2">[</span>q<span class="k2">]</span>.x<span class="k2">)</span>en<span class="k2">[</span>q<span class="k2">]</span>.x<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">else</span> en<span class="k2">[</span>q<span class="k2">]</span>.x--<span class="k2">;</span></td></tr><tr><td class="number">17</td><td><span class="k1">if</span><span class="k2">(</span>myY&gt;en<span class="k2">[</span>q<span class="k2">]</span>.y<span class="k2">)</span>en<span class="k2">[</span>q<span class="k2">]</span>.y<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">else</span> en<span class="k2">[</span>q<span class="k2">]</span>.y--<span class="k2">;</span></td></tr><tr><td class="number">18</td><td><span class="k1">if</span><span class="k2">(</span>myX <span class="k3">=</span><span class="k3">=</span> en<span class="k2">[</span>q<span class="k2">]</span>.x <span class="k3">&amp;</span><span class="k3">&amp;</span> myY <span class="k3">=</span><span class="k3">=</span> en<span class="k2">[</span>q<span class="k2">]</span>.y<span class="k2">)</span> end<span class="k3">=</span><span class="k1">true</span><span class="k2">;</span></td></tr><tr><td class="number">19</td><td>score<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">20</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>KEY_ESC<span class="k2">]</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k3">!</span>end <span class="k3">&amp;</span><span class="k3">&amp;</span> myX&gt;0 <span class="k3">&amp;</span><span class="k3">&amp;</span> myY&gt;0<span class="k3">&amp;</span><span class="k3">&amp;</span>myX<span class="k3">&lt;</span><span class="n">320</span><span class="k3">&amp;</span>myY<span class="k3">&lt;</span><span class="n">240</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">21</td><td><a href="http://www.allegro.cc/manual/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span><span class="s">"%i"</span>,score<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">22</td><td><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></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Ben Jacobs)</author>
		<pubDate>Sat, 07 Feb 2004 00:19:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>allegro_message(&quot;&quot;+score);</p></div></div><p>

It ain&#39;t java, ya know.</p><p>Try (&quot;%i&quot;,score).</p><p>Marcello
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Marcello)</author>
		<pubDate>Sat, 07 Feb 2004 00:26:52 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Oh crap, you&#39;re right.<br />I program JAVA at work so...: (
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Ben Jacobs)</author>
		<pubDate>Sat, 07 Feb 2004 00:36:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Here you have: <a href="http://www.geocities.com/screenhack2004">The ScreenHack web site</a>.</p><p>I know it isn&#39;t the best web ever, but it&#39;s late (19:49pm at local time) and I&#39;m tired. I&#39;ll try to do something better this week-end.</p><p><b>note:</b> I&#39;ve called the site ScreenHack<b>2004</b> because somebody has a Yahoo! ID named ScreenHack but no web...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Niunio)</author>
		<pubDate>Sat, 07 Feb 2004 00:49:30 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Way to steal my competition, Niunio. <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /> I was going to put up a webpage with the winners myself, in case, say, I want to bolster any university applications with a sampling of my programming experience. But I guess your site wouldn&#39;t really interfere with my (figurative) site, except for the slight issue of redundancy... meh.</p><p>So, anyway... are you now administering the competition and judging, or just doing the web site?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Goodbytes)</author>
		<pubDate>Sat, 07 Feb 2004 01:23:20 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>/me wipes sweat off forehead.<br />My submission (80_25_Chase) compiled successfully on linux(Gentoo, gcc 3.2.3). I&#39;ve attached the resulting binary program. I wasn&#39;t able to fully test the program, however. My linux machine can&#39;t run any AGL apps yet, and it&#39;s also flaky on some Allegro apps, but oh well. I hope this binary works.</p><p>BTW, when I ran it, I got a segmentation fault. I discovered that the problem was that, set_gfx_mode was failing(obviously, since I mentioned the machine can&#39;t run AGL apps) and the next allegro calls or something caused a crash(segfault). So if you get a seg-fault, it&#39;s only because there&#39;s no error checking on set_gfx_mode <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /></p><p>Long Live Linux! Power to Cross-Comptability!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Sat, 07 Feb 2004 01:38:00 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>GB: I don&#39;t think he was thinking of it as a competition, just as a directory of nifty source files.</p><p>Everyone: I think GB should have dibs on the speedhack site / processes -- after all, he did start it, and he did kinda indicate from the start that he intended to run it and such.  Also, I&#39;d prefer a compo site run off GB&#39;s paid host instead of geocities <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /><br />Of course, if GB doesn&#39;t actually set anything up, then I have no problem with Niunio&#39;s site.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Sat, 07 Feb 2004 02:19:34 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>OK, here`s a little question about the rules:</p><p>Can I use values instead of some Allegro defines like 0 for GFX_AUTODETECT?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Sat, 07 Feb 2004 04:48:53 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Dammit, the source of webpage should be 80x25!  And if you want to do even better, make it formatted so what you see is 80x25...</p><p>Marcello
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Marcello)</author>
		<pubDate>Sat, 07 Feb 2004 05:11:04 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Krzysztof Kluczek: I&#39;m pretty sure you can...cause I did! heh. does GFX_AUTODETECT resolve to a constant number? I know that GFX_OPENGL_WINDOWED doesn&#39;t, it&#39;s platform specific. I resolved all my KEY_* though.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Sat, 07 Feb 2004 05:30:23 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Yes, Krzystof, you are allowed to do such things. If the program doesn&#39;t work on other people&#39;s computers, it&#39;s on your head, though...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Goodbytes)</author>
		<pubDate>Sat, 07 Feb 2004 05:54:21 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">gfx.h said:</div><div class="quote"><p>#define GFX_AUTODETECT 0</p></div></div><p>
I guess it`s rather platform independent.</p><p>As for the KEY_* constants I was quite surprised when moving form Allegro 3.* to 4.* since their values changed! In previous versions they were equal to raw keyboard scancodes and now they are more logically assigned (eg. KEY_A was 30, now it is 1, KEY_B is 2 and so on... ).</p><p>Anyway I`ll wait for Goodbytes opinion. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>edit: I got this opinion when was writing this post. <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Sat, 07 Feb 2004 05:54:28 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ok, finally got it done <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />.  its really simple but challenging too, 5 levels.  use the arrow keys/esc/right control.</p><p>(22 lines)
</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number">  1</span><span class="p">#include &lt;allegro.h&gt;</span>
<span class="number">  2</span><span class="p">#define C(x,y,col,s) if(s)circlefill(bf,x,y,15,col);</span>
<span class="number">  3</span><span class="k1">class</span> P<span class="k2">{</span>public:int x,y,c,s,d<span class="k2">;</span><span class="k2">}</span><span class="k2">;</span>P p,b<span class="k2">[</span><span class="n">5</span><span class="k2">]</span>,k<span class="k2">;</span><span class="k1">bool</span> q<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">void</span> j<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="k1">int</span> x,<span class="k1">int</span> y
<span class="number">  4</span>,<span class="k1">int</span> d<span class="k2">)</span><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,x,y<span class="k2">)</span><span class="k3">!</span><span class="k3">=</span>d <span class="k3">&amp;</span><span class="k3">&amp;</span> <a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span>b,x,y<span class="k2">)</span><span class="k3">!</span><span class="k3">=</span>k.c<span class="k2">)</span>q<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> u<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="k1">int</span>
<span class="number">  5</span>x,<span class="k1">int</span> y,<span class="k1">int</span> d<span class="k2">)</span><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,x,y<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span>d<span class="k2">)</span>q<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>bf<span class="k2">;</span><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> l<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>
<span class="number">  6</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>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">480</span>,<span class="n">320</span><span class="k2">)</span><span class="k2">;</span>St:<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">480</span>,<span class="n">320</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span>
<span class="number">  7</span><span class="k1">goto</span> Ls<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/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>bf,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>p.x<span class="k3">=</span>p.y<span class="k3">=</span><span class="n">15</span><span class="k2">;</span>p.c<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>p.s<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>p.d<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>
<span class="number">  8</span><span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span> y<span class="k3">&lt;</span><span class="n">5</span><span class="k2">;</span> y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">=</span><span class="k2">(</span>y<span class="k3">*</span><span class="n">19</span><span class="k2">)</span><span class="k3">+</span><span class="n">120</span><span class="k2">;</span>b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">=</span><span class="k2">(</span>y<span class="k3">*</span><span class="n">19</span><span class="k2">)</span><span class="k3">+</span><span class="n">250</span><span class="k2">;</span>b<span class="k2">[</span>y<span class="k2">]</span>.c<span class="k3">=</span><span class="n">12</span><span class="k3">+</span><span class="k2">(</span><span class="n">3</span><span class="k3">*</span>y<span class="k2">)</span><span class="k2">;</span>y<span class="k3">&lt;</span>l?
<span class="number">  9</span>b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k3">=</span><span class="n">1</span><span class="k2">:</span>b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span>y<span class="k2">;</span><span class="k2">}</span>k.c<span class="k3">=</span><span class="n">11</span><span class="k2">;</span>k.s<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>k.d<span class="k3">=</span><span class="k3">-</span><span class="n">1</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>
<span class="number"> 10</span>bf,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>C<span class="k2">(</span>k.x,k.y,k.c,k.s<span class="k2">)</span><span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>y<span class="k3">&lt;</span><span class="n">5</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/do_circle" target="_blank"><span class="a">do_circle</span></a><span class="k2">(</span>bf,b<span class="k2">[</span>y<span class="k2">]</span>.x,b<span class="k2">[</span>y<span class="k2">]</span>.y,<span class="n">15</span>,k.c,
<span class="number"> 11</span>u<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>q<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k3">=</span>k.s<span class="k3">=</span><span class="n">0</span>,q<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>C<span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x,b<span class="k2">[</span>y<span class="k2">]</span>.y,b<span class="k2">[</span>y<span class="k2">]</span>.c,b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<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>b<span class="k2">[</span>y<span class="k2">]</span>.x-<span class="k3">=</span><span class="n">7</span>,
<span class="number"> 12</span>b<span class="k2">[</span>y<span class="k2">]</span>.y-<span class="k3">=</span><span class="n">7</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">3</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<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>b<span class="k2">[</span>y<span class="k2">]</span>.x
<span class="number"> 13</span><span class="k3">+</span><span class="k3">=</span><span class="n">7</span>,b<span class="k2">[</span>y<span class="k2">]</span>.y-<span class="k3">=</span><span class="n">7</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x&gt;480<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<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>b<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><span class="k2">{</span>
<span class="number"> 14</span>b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">+</span><span class="k3">=</span><span class="n">7</span>,b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">+</span><span class="k3">=</span><span class="n">7</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x&gt;480<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">3</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.y&gt;320<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<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>b<span class="k2">[</span>y<span class="k2">]</span>
<span class="number"> 15</span>.d&gt;<span class="k3">=</span><span class="n">3</span><span class="k2">)</span><span class="k2">{</span>b<span class="k2">[</span>y<span class="k2">]</span>.x-<span class="k3">=</span><span class="n">7</span>,b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">+</span><span class="k3">=</span><span class="n">7</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<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>b<span class="k2">[</span>y<span class="k2">]</span>.y&gt;320<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>
<span class="number"> 16</span><a href="http://www.allegro.cc/manual/do_circle" target="_blank"><span class="a">do_circle</span></a><span class="k2">(</span>bf,p.x,p.y,<span class="n">15</span>,<span class="n">1</span>,j<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>q<span class="k2">)</span><span class="k2">{</span><span class="k1">goto</span> Ls<span class="k2">;</span>q<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>C<span class="k2">(</span>p.x,p.y,p.c,p.s<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>p.
<span class="number"> 17</span>x-<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">83</span><span class="k2">]</span><span class="k2">)</span>p.x<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">84</span><span class="k2">]</span><span class="k2">)</span>p.y-<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">85</span><span class="k2">]</span><span class="k2">)</span>p.y<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">110</span><span class="k2">]</span><span class="k2">)</span>k.s<span class="k3">=</span><span class="n">1</span>,k.
<span class="number"> 18</span>x<span class="k3">=</span>p.x,k.y<span class="k3">=</span>p.y<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>y<span class="k3">&lt;</span><span class="n">5</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>b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k1">goto</span> Ji<span class="k2">;</span><span class="k1">goto</span> Wn<span class="k2">;</span>Ji:<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,
<span class="number"> 19</span><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>,bf-&gt;w,bf-&gt;h<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>Ed:<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>bf<span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>Wn:<span class="k2">;</span>
<span class="number"> 20</span><a href="http://www.allegro.cc/manual/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span><span class="s">"You win!(lvl%d)\n"</span>,l<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">1000</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><span class="k1">if</span><span class="k2">(</span>l
<span class="number"> 21</span><span class="k3">&lt;</span><span class="n">6</span><span class="k2">)</span><span class="k2">{</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">goto</span> St<span class="k2">;</span><span class="k2">}</span><span class="k1">goto</span> Ed<span class="k2">;</span>Ls:<span class="k2">;</span><a href="http://www.allegro.cc/manual/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span><span class="s">"You Lose. (or error)\n"</span><span class="k2">)</span><span class="k2">;</span><span class="k1">goto</span> Ed<span class="k2">;</span>
<span class="number"> 22</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>
</div></div><p>
compiled on gcc/linux</p><p>edit:<br />oh i almost forgot, dont go off the screen.<br />and heres my &#039;uncompressed&#039; version(108 lines):</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number">   1</span><span class="p">#include &lt;allegro.h&gt;</span>
<span class="number">   2</span><span class="p">#define C(x,y,col,s) if(s)circlefill(bf,x,y,15,col);</span>
<span class="number">   3</span>
<span class="number">   4</span><span class="k1">class</span> P<span class="k2">{</span>
<span class="number">   5</span>public:
<span class="number">   6</span>    <span class="k1">int</span> x,y,c,s,d<span class="k2">;</span>
<span class="number">   7</span><span class="k2">}</span><span class="k2">;</span>
<span class="number">   8</span>
<span class="number">   9</span>P p<span class="k2">;</span>
<span class="number">  10</span>P b<span class="k2">[</span><span class="n">5</span><span class="k2">]</span><span class="k2">;</span>
<span class="number">  11</span>P k<span class="k2">;</span>
<span class="number">  12</span>
<span class="number">  13</span><span class="k1">bool</span> q<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>
<span class="number">  14</span><span class="k1">void</span> j<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="k1">int</span> x,<span class="k1">int</span> y,<span class="k1">int</span> d<span class="k2">)</span><span class="k2">{</span>
<span class="number">  15</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,x,y<span class="k2">)</span><span class="k3">!</span><span class="k3">=</span>d <span class="k3">&amp;</span><span class="k3">&amp;</span> <a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span>b,x,y<span class="k2">)</span><span class="k3">!</span><span class="k3">=</span>k.c<span class="k2">)</span>q<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>
<span class="number">  16</span><span class="k2">}</span>
<span class="number">  17</span><span class="k1">void</span> u<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="k1">int</span> x,<span class="k1">int</span> y,<span class="k1">int</span> d<span class="k2">)</span><span class="k2">{</span>
<span class="number">  18</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,x,y<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span>d<span class="k2">)</span>q<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>
<span class="number">  19</span><span class="k2">}</span>
<span class="number">  20</span>
<span class="number">  21</span><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="number">  22</span>
<span class="number">  23</span><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>
<span class="number">  24</span>    <span class="k1">int</span> l<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>
<span class="number">  25</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="number">  26</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">480</span>,<span class="n">320</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  27</span>    St:<span class="k2">;</span>
<span class="number">  28</span>    <span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_AUTODETECT, <span class="n">480</span>, <span class="n">320</span>, <span class="n">0</span>, <span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k1">goto</span> Ls<span class="k2">;</span>
<span class="number">  29</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="number">  30</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>bf,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  31</span>    p.x<span class="k3">=</span><span class="n">15</span><span class="k2">;</span>
<span class="number">  32</span>    p.y<span class="k3">=</span><span class="n">15</span><span class="k2">;</span>
<span class="number">  33</span>    p.c<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>
<span class="number">  34</span>    p.s<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>
<span class="number">  35</span>    p.d<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>
<span class="number">  36</span>    <span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span> y<span class="k3">&lt;</span><span class="n">5</span><span class="k2">;</span> y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>
<span class="number">  37</span>  b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">=</span><span class="k2">(</span>y<span class="k3">*</span><span class="n">19</span><span class="k2">)</span><span class="k3">+</span><span class="n">120</span><span class="k2">;</span>
<span class="number">  38</span>  b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">=</span><span class="k2">(</span>y<span class="k3">*</span><span class="n">19</span><span class="k2">)</span><span class="k3">+</span><span class="n">250</span><span class="k2">;</span>
<span class="number">  39</span>  b<span class="k2">[</span>y<span class="k2">]</span>.c<span class="k3">=</span><span class="n">12</span><span class="k3">+</span><span class="k2">(</span><span class="n">3</span><span class="k3">*</span>y<span class="k2">)</span><span class="k2">;</span>
<span class="number">  40</span>  y<span class="k3">&lt;</span>l?b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k3">=</span><span class="n">1</span><span class="k2">:</span>b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>
<span class="number">  41</span>  b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span>y<span class="k2">;</span>
<span class="number">  42</span>    <span class="k2">}</span>
<span class="number">  43</span>    k.c<span class="k3">=</span><span class="n">11</span><span class="k2">;</span>
<span class="number">  44</span>    k.s<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>
<span class="number">  45</span>    k.d<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span>
<span class="number">  46</span>    
<span class="number">  47</span>    
<span class="number">  48</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="number">  49</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>bf,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  50</span>  C<span class="k2">(</span>k.x,k.y,k.c,k.s<span class="k2">)</span>
<span class="number">  51</span>  <span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>y<span class="k3">&lt;</span><span class="n">5</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>
<span class="number">  52</span>      <a href="http://www.allegro.cc/manual/do_circle" target="_blank"><span class="a">do_circle</span></a><span class="k2">(</span>bf,b<span class="k2">[</span>y<span class="k2">]</span>.x,b<span class="k2">[</span>y<span class="k2">]</span>.y,<span class="n">15</span>,k.c,u<span class="k2">)</span><span class="k2">;</span>
<span class="number">  53</span>      <span class="k1">if</span><span class="k2">(</span>q<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k3">=</span>k.s<span class="k3">=</span><span class="n">0</span>,q<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>
<span class="number">  54</span>      C<span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x,b<span class="k2">[</span>y<span class="k2">]</span>.y,b<span class="k2">[</span>y<span class="k2">]</span>.c,b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k2">)</span>
<span class="number">  55</span>
<span class="number">  56</span>      <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<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="number">  57</span>    b<span class="k2">[</span>y<span class="k2">]</span>.x-<span class="k3">=</span><span class="n">7</span>,b<span class="k2">[</span>y<span class="k2">]</span>.y-<span class="k3">=</span><span class="n">7</span><span class="k2">;</span>
<span class="number">  58</span>    <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>
<span class="number">  59</span>    <span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>
<span class="number">  60</span>      <span class="k2">}</span>
<span class="number">  61</span>      <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<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="number">  62</span>    b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">+</span><span class="k3">=</span><span class="n">7</span>,b<span class="k2">[</span>y<span class="k2">]</span>.y-<span class="k3">=</span><span class="n">7</span><span class="k2">;</span>
<span class="number">  63</span>    <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x&gt;SCREEN_W<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>
<span class="number">  64</span>    <span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">2</span><span class="k2">;</span>
<span class="number">  65</span>      <span class="k2">}</span>
<span class="number">  66</span>      <span class="k1">if</span><span class="k2">(</span>b<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><span class="k2">{</span>
<span class="number">  67</span>    b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">+</span><span class="k3">=</span><span class="n">7</span>,b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">+</span><span class="k3">=</span><span class="n">7</span><span class="k2">;</span>
<span class="number">  68</span>    <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x&gt;SCREEN_W<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>
<span class="number">  69</span>    <span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.y&gt;SCREEN_H<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>
<span class="number">  70</span>      <span class="k2">}</span>
<span class="number">  71</span>      <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.d&gt;<span class="k3">=</span><span class="n">3</span><span class="k2">)</span><span class="k2">{</span>
<span class="number">  72</span>    b<span class="k2">[</span>y<span class="k2">]</span>.x-<span class="k3">=</span><span class="n">7</span>,b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">+</span><span class="k3">=</span><span class="n">7</span><span class="k2">;</span>
<span class="number">  73</span>    <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">2</span><span class="k2">;</span>
<span class="number">  74</span>    <span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.y&gt;SCREEN_H<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>
<span class="number">  75</span>      <span class="k2">}</span>
<span class="number">  76</span>  <span class="k2">}</span>
<span class="number">  77</span>  <a href="http://www.allegro.cc/manual/do_circle" target="_blank"><span class="a">do_circle</span></a><span class="k2">(</span>bf,p.x,p.y,<span class="n">15</span>,<span class="n">1</span>,j<span class="k2">)</span><span class="k2">;</span>
<span class="number">  78</span>  <span class="k1">if</span><span class="k2">(</span>q<span class="k2">)</span><span class="k2">{</span><span class="k1">goto</span> Ls<span class="k2">;</span>q<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>
<span class="number">  79</span>  
<span class="number">  80</span>  C<span class="k2">(</span>p.x,p.y,p.c,p.s<span class="k2">)</span>
<span class="number">  81</span>  
<span class="number">  82</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.x-<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>
<span class="number">  83</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.x<span class="k3">+</span><span class="k3">=</span><span class="n">3</span><span class="k2">;</span>
<span class="number">  84</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.y-<span class="k3">=</span><span class="n">3</span><span class="k2">;</span>
<span class="number">  85</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.y<span class="k3">+</span><span class="k3">=</span><span class="n">3</span><span class="k2">;</span>
<span class="number">  86</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_RCONTROL<span class="k2">]</span><span class="k2">)</span>k.s<span class="k3">=</span><span class="n">1</span>,k.x<span class="k3">=</span>p.x,k.y<span class="k3">=</span>p.y<span class="k2">;</span>
<span class="number">  87</span>  
<span class="number">  88</span>  <span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>y<span class="k3">&lt;</span><span class="n">5</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number">  89</span>      <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k1">goto</span> Ji<span class="k2">;</span>
<span class="number">  90</span>  <span class="k1">goto</span> Wn<span class="k2">;</span>
<span class="number">  91</span>  Ji:<span class="k2">;</span>
<span class="number">  92</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>,bf-&gt;w,bf-&gt;h<span class="k2">)</span><span class="k2">;</span>
<span class="number">  93</span>    <span class="k2">}</span>
<span class="number">  94</span>    Ed:<span class="k2">;</span>
<span class="number">  95</span>    <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>bf<span class="k2">)</span><span class="k2">;</span>
<span class="number">  96</span>    <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  97</span>    Wn:<span class="k2">;</span>
<span class="number">  98</span>    <a href="http://www.allegro.cc/manual/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span><span class="s">"You win!(lvl%d)\n"</span>,l<span class="k2">)</span><span class="k2">;</span>
<span class="number">  99</span>    <a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">1000</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 100</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="number"> 101</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="number"> 102</span>    <span class="k1">if</span><span class="k2">(</span>l<span class="k3">&lt;</span><span class="n">6</span><span class="k2">)</span><span class="k2">{</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">goto</span> St<span class="k2">;</span><span class="k2">}</span>
<span class="number"> 103</span>    <span class="k1">goto</span> Ed<span class="k2">;</span>
<span class="number"> 104</span>    Ls:<span class="k2">;</span>
<span class="number"> 105</span>    <a href="http://www.allegro.cc/manual/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span><span class="s">"You Lose. (or error)\n"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 106</span>    <span class="k1">goto</span> Ed<span class="k2">;</span>
<span class="number"> 107</span><span class="k2">}</span>
<span class="number"> 108</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>
</div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (ImLeftFooted)</author>
		<pubDate>Sun, 08 Feb 2004 03:17:30 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Nice game. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>I had to change two things before I got it running under DJGPP:</p><p>1. Change graphics mode and backbuffer size. In DOS there is no windowed mode and you have to use screen resolutions (I changed to 640x480).<br />2. I had to add vsync() before blit() since it was really too fast (I think 0.1s was enough to travel through entire screen).</p><p>(consider changing it in your source to make it portable) <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>OK, I`ll return to play. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>edit: I found there is way to cheat - just hold control key pressed and everything that touches you gets killed. Consider making player bigger/the bomb smaller or swapping collision checking order.</p><p>Oh, and rest() requires install_timer to work properly.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Sun, 08 Feb 2004 03:45:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hehe, I want to see a 80x25 game in java... now that would be difficult.</p><p>Marcello
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Marcello)</author>
		<pubDate>Sun, 08 Feb 2004 05:20:53 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>okay, i fixed some stuff, made it (hopefully) cross compatible, and added a lifetime to the mine.  Tell me what u think</p><p>edit: hold 1/2/3 when its loading to slow it down if its too fast.</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(x,y,col,s) if(s)circlefill(bf,x,y,15,col);</span></td></tr><tr><td class="number">3</td><td><span class="k1">class</span> P<span class="k2">{</span>public:int x,y,c,s,d<span class="k2">;</span><span class="k2">}</span><span class="k2">;</span>P p,b<span class="k2">[</span><span class="n">8</span><span class="k2">]</span>,k<span class="k2">;</span><span class="k1">int</span> s<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">bool</span> q<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">void</span> j<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="k1">int</span></td></tr><tr><td class="number">4</td><td>x,<span class="k1">int</span> y,<span class="k1">int</span> d<span class="k2">)</span><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,x,y<span class="k2">)</span><span class="k3">!</span><span class="k3">=</span>d <span class="k3">&amp;</span><span class="k3">&amp;</span> <a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span>b,x,y<span class="k2">)</span><span class="k3">!</span><span class="k3">=</span>k.c<span class="k2">)</span>q<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> u<span class="k2">(</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a></td></tr><tr><td class="number">5</td><td><span class="k3">*</span>b,<span class="k1">int</span> x,<span class="k1">int</span> y,<span class="k1">int</span> d<span class="k2">)</span><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,x,y<span class="k2">)</span><span class="k3">=</span><span class="k3">=</span>d<span class="k2">)</span>q<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>bf<span class="k2">;</span><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> l<span class="k3">=</span><span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">6</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>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">480</span>,<span class="n">320</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/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span><span class="n">0</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><span class="k1">goto</span></td></tr><tr><td class="number">7</td><td>Ls<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/rest" target="_blank"><span class="a">rest</span></a><span class="k2">(</span><span class="n">1500</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>KEY_1<span class="k2">]</span>?s<span class="k3">=</span><span class="n">1</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_2<span class="k2">]</span>?s<span class="k3">=</span><span class="n">2</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_3<span class="k2">]</span>?s<span class="k3">=</span><span class="n">3</span><span class="k2">:</span>s</td></tr><tr><td class="number">8</td><td><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>St:<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>bf,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>p.x<span class="k3">=</span>p.y<span class="k3">=</span><span class="n">15</span><span class="k2">;</span>p.c<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>p.s<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>p.d<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span> y<span class="k3">&lt;</span><span class="n">8</span><span class="k2">;</span></td></tr><tr><td class="number">9</td><td>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">=</span><span class="k2">(</span>y<span class="k3">*</span><span class="n">9</span><span class="k2">)</span><span class="k3">+</span><span class="n">120</span><span class="k2">;</span>b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">=</span><span class="k2">(</span>y<span class="k3">*</span><span class="n">9</span><span class="k2">)</span><span class="k3">+</span><span class="n">250</span><span class="k2">;</span>b<span class="k2">[</span>y<span class="k2">]</span>.c<span class="k3">=</span><span class="n">12</span><span class="k3">+</span><span class="k2">(</span><span class="n">3</span><span class="k3">*</span>y<span class="k2">)</span><span class="k2">;</span>y<span class="k3">&lt;</span>l?b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k3">=</span><span class="n">1</span><span class="k2">:</span>b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>b<span class="k2">[</span></td></tr><tr><td class="number">10</td><td>y<span class="k2">]</span>.d<span class="k3">=</span>y<span class="k3">&lt;</span><span class="n">4</span>?y:y<span class="k3">&lt;</span><span class="n">5</span>?<span class="n">0</span><span class="k2">:</span>y<span class="k3">&lt;</span><span class="n">6</span>?<span class="n">1</span><span class="k2">:</span>y<span class="k3">&lt;</span><span class="n">7</span>?<span class="n">2</span><span class="k2">:</span><span class="n">3</span><span class="k2">;</span><span class="k2">}</span>k.c<span class="k3">=</span><span class="n">11</span><span class="k2">;</span>k.s<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>k.d<span class="k3">=</span><span class="k3">-</span><span class="n">1</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="k1">if</span><span class="k2">(</span>k.s</td></tr><tr><td class="number">11</td><td><span class="k2">)</span>k.d&gt;-85?k.d--:k.s<span class="k3">=</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>bf,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>C<span class="k2">(</span>k.x,k.y,k.c,k.s<span class="k2">)</span><span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>y<span class="k3">&lt;</span><span class="n">8</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</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/do_circle" target="_blank"><span class="a">do_circle</span></a><span class="k2">(</span>bf,b<span class="k2">[</span>y<span class="k2">]</span>.x,b<span class="k2">[</span>y<span class="k2">]</span>.y,<span class="n">8</span>,k.c,u<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>q<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k3">=</span>k.s<span class="k3">=</span><span class="n">0</span>,q<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>C<span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x,b<span class="k2">[</span>y<span class="k2">]</span>.y,b<span class="k2">[</span>y</td></tr><tr><td class="number">13</td><td><span class="k2">]</span>.c,b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<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>b<span class="k2">[</span>y<span class="k2">]</span>.x-<span class="k3">=</span><span class="n">7</span>,b<span class="k2">[</span>y<span class="k2">]</span>.y-<span class="k3">=</span><span class="n">7</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.</td></tr><tr><td class="number">14</td><td>y<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">3</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<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>b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">+</span><span class="k3">=</span><span class="n">7</span>,b<span class="k2">[</span>y<span class="k2">]</span>.y-<span class="k3">=</span><span class="n">7</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x&gt;480<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span></td></tr><tr><td class="number">15</td><td>b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<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>b<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><span class="k2">{</span>b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">+</span><span class="k3">=</span><span class="n">7</span>,b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">+</span><span class="k3">=</span><span class="n">7</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x&gt;480<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<span class="k3">=</span><span class="n">3</span><span class="k2">;</span></td></tr><tr><td class="number">16</td><td><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.y&gt;320<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<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>b<span class="k2">[</span>y<span class="k2">]</span>.d&gt;<span class="k3">=</span><span class="n">3</span><span class="k2">)</span><span class="k2">{</span>b<span class="k2">[</span>y<span class="k2">]</span>.x-<span class="k3">=</span><span class="n">7</span>,b<span class="k2">[</span>y<span class="k2">]</span>.y<span class="k3">+</span><span class="k3">=</span><span class="n">7</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>b<span class="k2">[</span>y<span class="k2">]</span>.x<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span></td></tr><tr><td class="number">17</td><td>.d<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>b<span class="k2">[</span>y<span class="k2">]</span>.y&gt;320<span class="k2">)</span>b<span class="k2">[</span>y<span class="k2">]</span>.d<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/do_circle" target="_blank"><span class="a">do_circle</span></a><span class="k2">(</span>bf,p.x,p.y,<span class="n">15</span>,<span class="n">1</span>,j<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>q<span class="k2">)</span><span class="k2">{</span><span class="k1">goto</span> Ls<span class="k2">;</span>q</td></tr><tr><td class="number">18</td><td><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>C<span class="k2">(</span>p.x,p.y,p.c,p.s<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.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>KEY_RIGHT<span class="k2">]</span><span class="k2">)</span>p.x<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></td></tr><tr><td class="number">19</td><td>KEY_UP<span class="k2">]</span><span class="k2">)</span>p.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>KEY_DOWN<span class="k2">]</span><span class="k2">)</span>p.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>KEY_RCONTROL<span class="k2">]</span><span class="k2">)</span>k.s<span class="k3">=</span><span class="n">1</span>,k.x<span class="k3">=</span>p.x,k.y<span class="k3">=</span>p</td></tr><tr><td class="number">20</td><td>.y,k.d<span class="k3">=</span><span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> y<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>y<span class="k3">&lt;</span><span class="n">8</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>b<span class="k2">[</span>y<span class="k2">]</span>.s<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k1">goto</span> Ji<span class="k2">;</span><span class="k1">goto</span> Wn<span class="k2">;</span>Ji:<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k1">int</span> x<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k3">&lt;</span>s<span class="k2">;</span></td></tr><tr><td class="number">21</td><td>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><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">100</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>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">80</span>,<span class="n">80</span>,bf-&gt;w,bf-&gt;h<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>Ed:<span class="k2">;</span><a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a></td></tr><tr><td class="number">22</td><td><span class="k2">(</span>bf<span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>Wn:<span class="k2">;</span><a href="http://www.allegro.cc/manual/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span><span class="s">"You win!(lvl%d)\n"</span>,l<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">1000</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/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><span class="k1">if</span><span class="k2">(</span>l<span class="k3">&lt;</span><span class="n">9</span><span class="k2">)</span><span class="k2">{</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">goto</span> St<span class="k2">;</span><span class="k2">}</span><span class="k1">goto</span> Ed<span class="k2">;</span>Ls:<span class="k2">;</span><a href="http://www.allegro.cc/manual/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span></td></tr><tr><td class="number">24</td><td><span class="s">"You Lose. (or error)\n"</span><span class="k2">)</span><span class="k2">;</span><span class="k1">goto</span> Ed<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>

edit:<br />My beautiful screenshot <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /><br />http://www.mize.org/screenshot.png</p><p>edit2:<br />I was thinking that this game probably makes no sense::), so ima explain it a little.  The object is to destroy all the bad circles by dropping your mine in their path(Right Control).  But dont let them touch you either, cause then u gotta start all over.  After a certain amount of time, the mine expires and you have reset it.  Also, leaving the ring automaticaly starts you over.  there are 9 levels to beat. and...well, I hope that its fun.  Its my kind of game anyway, the kind that is near impossible to beat but you try for hours and hours:P</p><p>if the game runs too fast, press and hold 1, 2, or 3 while the game loades (3 being the slowest).  the default is 0.</p><p>attached is a linux binary
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (ImLeftFooted)</author>
		<pubDate>Sun, 08 Feb 2004 08:01:20 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>How about some screenshots?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Paul Pridham)</author>
		<pubDate>Sun, 08 Feb 2004 09:52:19 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Gravitational dot swarm by Mark Hall!<br />Move the mouse to avoid the swarm of killer dots that are gravitationally attracted to you. Your circle becomes redder the closer you are to death. Press ESC to quit prematurely.
</p><div class="source-code snippet"><div class="inner"><pre><span class="p">#include &lt;allegro.h&gt;</span>
<span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> dx<span class="k2">[</span><span class="n">256</span><span class="k2">]</span><span class="k2">;</span><span class="k1">int</span> dy<span class="k2">[</span><span class="n">256</span><span class="k2">]</span><span class="k2">;</span><span class="k1">double</span> vx<span class="k2">[</span><span class="n">256</span><span class="k2">]</span><span class="k2">;</span><span class="k1">double</span> vy<span class="k2">[</span><span class="n">256</span><span class="k2">]</span><span class="k2">;</span><span class="k1">int</span> x<span class="k2">;</span><span class="k1">int</span> hp<span class="k3">=</span>
<span class="n">255</span><span class="k2">;</span><span class="k1">int</span> ht<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/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>bu<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.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>
GFX_AUTODETECT,<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/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/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">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">256</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>dx<span class="k2">[</span>x<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">640</span><span class="k2">;</span>dy<span class="k2">[</span>x<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>vx<span class="k2">[</span>x<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>vy<span class="k2">[</span>x<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">do</span><span class="k2">{</span>ht<span class="k3">=</span><span class="n">0</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">256</span><span class="k2">;</span>x<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>bu,<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>,<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>,hp,hp<span class="k2">)</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>
bu,dx<span class="k2">[</span>x<span class="k2">]</span>,dy<span class="k2">[</span>x<span class="k2">]</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>,x,x<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/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k3">&lt;</span>dx<span class="k2">[</span>x<span class="k2">]</span><span class="k2">)</span>vx<span class="k2">[</span>x<span class="k2">]</span><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/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k3">=</span><span class="k3">=</span>dx<span class="k2">[</span>x<span class="k2">]</span>
<span class="k2">)</span>ht<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">else</span> vx<span class="k2">[</span>x<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/mouse_y" target="_blank"><span class="a">mouse_y</span></a><span class="k3">&lt;</span>dy<span class="k2">[</span>x<span class="k2">]</span><span class="k2">)</span>vy<span class="k2">[</span>x<span class="k2">]</span><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/mouse_y" target="_blank"><span class="a">mouse_y</span></a><span class="k3">=</span><span class="k3">=</span>dy<span class="k2">[</span>x<span class="k2">]</span><span class="k2">)</span>ht<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">else</span> vy<span class="k2">[</span>
x<span class="k2">]</span><span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>dx<span class="k2">[</span>x<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>vx<span class="k2">[</span>x<span class="k2">]</span><span class="k2">;</span>dy<span class="k2">[</span>x<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>vy<span class="k2">[</span>x<span class="k2">]</span><span class="k2">;</span>vx<span class="k2">[</span>x<span class="k2">]</span><span class="k3">*</span><span class="k3">=</span><span class="n">0</span>.<span class="n">99</span><span class="k2">;</span>vy<span class="k2">[</span>x<span class="k2">]</span><span class="k3">*</span><span class="k3">=</span><span class="n">0</span>.<span class="n">99</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>ht<span class="k2">)</span>hp--<span class="k2">;</span><a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>bu,
<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">30</span><span class="k2">)</span><span class="k2">;</span>clear<span class="k2">(</span>bu<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="k3">&amp;</span><span class="k3">&amp;</span>hp&gt;0<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>bu<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></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Mark Hall)</author>
		<pubDate>Sun, 08 Feb 2004 11:09:46 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I finally got around to looking at all the entries, and thought i might as well throw it into a zip(attatched), so here it is.  I also included linux binaries for the non gl ones that would compile.  Are we going to have a vote or anything?</p><p>edit: I couldnt resist <img src="http://www.allegro.cc/forums/smileys/rolleyes.gif" alt="::)" /> <a href="http://www.mize.org/clickit.html">ClickIt</a></p><p>edit2: updated zip for dot swarm 2
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (ImLeftFooted)</author>
		<pubDate>Sun, 08 Feb 2004 14:10:42 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I&#39;m most impressed by Krzysztof&#39;s game - there were a few compiling issues (djgpp) and editing it messed the map up a bit. Eventually I had to use two diferent version of the code, one for the map. I&#39;ll be trying some of the recent ones now...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Eric Love)</author>
		<pubDate>Sun, 08 Feb 2004 16:57:13 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Okay, I fixed up the game and added some new stuff. Now you have a weapon to fight back with! The bar on the top is how much energy you have. Left-click to activate your repulsor, which will push the gravitational dots away from you. However, you have a limited amount of fuel. I also fixed the dot collision detection.</p><div class="source-code snippet"><div class="inner"><pre><span class="p">#include &lt;allegro.h&gt;</span>
<span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">double</span> dx<span class="k2">[</span><span class="n">256</span><span class="k2">]</span><span class="k2">;</span><span class="k1">double</span> dy<span class="k2">[</span><span class="n">256</span><span class="k2">]</span><span class="k2">;</span><span class="k1">double</span> vx<span class="k2">[</span><span class="n">256</span><span class="k2">]</span><span class="k2">;</span><span class="k1">double</span> vy<span class="k2">[</span><span class="n">256</span><span class="k2">]</span><span class="k2">;</span><span class="k1">int</span> x<span class="k2">;</span><span class="k1">int</span>
hp<span class="k3">=</span><span class="n">255</span><span class="k2">;</span><span class="k1">int</span> ht<span class="k2">;</span><span class="k1">double</span> fx<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">int</span> pw<span class="k3">=</span><span class="n">320</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/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>bu<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.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_AUTODETECT,<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/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/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">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">256</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>dx<span class="k2">[</span>x<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">640</span><span class="k2">;</span>dy<span class="k2">[</span>x<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>vx<span class="k2">[</span>x<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>vy
<span class="k2">[</span>x<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">do</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</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="k3">&amp;</span><span class="k3">&amp;</span>pw--&gt;0<span class="k2">)</span>fx<span class="k3">=</span><span class="k3">-</span><span class="n">0</span>.<span class="n">01</span><span class="k2">;</span><span class="k1">else</span> fx<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>ht<span class="k3">=</span><span class="n">0</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>bu,<span class="n">0</span>,<span class="n">0</span>,pw<span class="k3">*</span><span class="n">2</span>,<span class="n">2</span>,
<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">0</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/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>bu,<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>,<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>,hp,hp<span class="k2">)</span><span class="k2">)</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">256</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</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>bu,dx<span class="k2">[</span>x<span class="k2">]</span>,dy<span class="k2">[</span>x<span class="k2">]</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>,x,x<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/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k3">&lt;</span>dx<span class="k2">[</span>x<span class="k2">]</span><span class="k2">)</span>vx<span class="k2">[</span>x<span class="k2">]</span><span class="k3">-</span><span class="k3">=</span>fx<span class="k2">;</span>
<span class="k1">else</span> vx<span class="k2">[</span>x<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>fx<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a><span class="k3">&lt;</span>dy<span class="k2">[</span>x<span class="k2">]</span><span class="k2">)</span>vy<span class="k2">[</span>x<span class="k2">]</span><span class="k3">-</span><span class="k3">=</span>fx<span class="k2">;</span><span class="k1">else</span> vy<span class="k2">[</span>x<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>fx<span class="k2">;</span>dx<span class="k2">[</span>x<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>vx<span class="k2">[</span>x<span class="k2">]</span><span class="k2">;</span>dy<span class="k2">[</span>x<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>vy<span class="k2">[</span>
x<span class="k2">]</span><span class="k2">;</span>vx<span class="k2">[</span>x<span class="k2">]</span><span class="k3">*</span><span class="k3">=</span><span class="n">0</span>.<span class="n">98</span><span class="k2">;</span>vy<span class="k2">[</span>x<span class="k2">]</span><span class="k3">*</span><span class="k3">=</span><span class="n">0</span>.<span class="n">98</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_38.html" target="_blank">abs</a><span class="k2">(</span>mouse_x-dx<span class="k2">[</span>x<span class="k2">]</span><span class="k2">)</span><span class="k3">&lt;</span><span class="n">3</span><span class="k3">&amp;</span><span class="k3">&amp;</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_38.html" target="_blank">abs</a><span class="k2">(</span>mouse_y-dy<span class="k2">[</span>x<span class="k2">]</span><span class="k3">&lt;</span><span class="n">3</span><span class="k2">)</span><span class="k2">)</span>ht<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>ht<span class="k2">)</span>hp-<span class="k3">=</span><span class="n">2</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>bu,<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">30</span><span class="k2">)</span><span class="k2">;</span>clear<span class="k2">(</span>bu<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="k3">&amp;</span><span class="k3">&amp;</span>hp&gt;0<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>bu<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></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Mark Hall)</author>
		<pubDate>Sun, 08 Feb 2004 21:55:13 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>there were a few compiling issues (djgpp)</p></div></div><p>
Eric: I`m quite surprised with this, since I developed this using DJGPP. Maybe you just have named the file as *.c? I compiled this with .cpp and it worked. And it also generates a bunch of conversion warnings and missing return in main() which you should ignore. Please PM me if you have any further problems. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Sun, 08 Feb 2004 22:22:01 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">GoodBytes said:</div><div class="quote"><p>Way to steal my competition, Niunio.</p></div></div><p>

Yea, it was!;D</p><div class="quote_container"><div class="title">GoodBytes (again) said:</div><div class="quote"><p>But I guess your site wouldn&#39;t really interfere with my (figurative) site, except for the slight issue of redundancy... meh.</p><p>So, anyway... are you now administering the competition and judging, or just doing the web site?</p></div></div><p>

I&#39;m just doing a web site, without judging.</p><div class="quote_container"><div class="title">Zaphos said:</div><div class="quote"><p>GB: I don&#39;t think he was thinking of it as a competition, just as a directory of nifty source files.</p></div></div><p>

Me also</p><div class="quote_container"><div class="title">Zaphos (again) said:</div><div class="quote"><p>Everyone: I think GB should have dibs on the speedhack site / processes -- after all, he did start it, and he did kinda indicate from the start that he intended to run it and such. Also, I&#39;d prefer a compo site run off GB&#39;s paid host instead of geocities  <br />Of course, if GB doesn&#39;t actually set anything up, then I have no problem with Niunio&#39;s site.</p></div></div><p>

If anybody has a problem with <a href="http://www.geocities.com/screenhack2004">my site</a>, let me know. I&#39;ll cancel my site if you (specially GoodBytes) don&#39;t agree with it.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Niunio)</author>
		<pubDate>Mon, 09 Feb 2004 01:22:09 +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><span class="p">#include &lt;stdlib.h&gt;</span></td></tr><tr><td class="number">3</td><td><span class="p">#define CS (rand()%10)-5</span></td></tr><tr><td class="number">4</td><td><span class="k1">void</span> main<span class="k2">(</span><span class="k1">void</span><span class="k2">)</span></td></tr><tr><td class="number">5</td><td><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">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,<span class="n">640</span>,<span class="n">480</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">6</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">7</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="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></td></tr><tr><td class="number">8</td><td>st:int bx<span class="k3">=</span><span class="n">320</span>,by<span class="k3">=</span><span class="n">240</span>,incx<span class="k3">=</span><span class="n">10</span>,incy<span class="k3">=</span><span class="n">5</span>,pp<span class="k3">=</span><span class="n">320</span>,ln<span class="k3">=</span><span class="n">40</span>,score<span class="k3">=</span><span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">9</td><td><span class="k1">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_ENTER<span class="k2">]</span><span class="k2">)</span>textprintf<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">100</span>,<span class="n">240</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">255</span><span class="k2">)</span>,</td></tr><tr><td class="number">10</td><td><span class="s">"wtf!?! yet another arkanoid!?! [PRESS ENTER]"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">11</td><td><span class="k1">while</span><span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_ESC<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">12</td><td><span class="k2">{</span>clear<span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>bx&gt;640<span class="k2">)</span>incx <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>bx<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>incx <span class="k3">=</span> <span class="n">5</span><span class="k2">;</span></td></tr><tr><td class="number">13</td><td><span class="k1">if</span><span class="k2">(</span>by&gt;460<span class="k2">)</span><span class="k2">{</span>incy<span class="k3">=</span><span class="k3">-</span><span class="n">5</span><span class="k2">;</span>incx<span class="k3">=</span>CS<span class="k2">;</span> <span class="k1">if</span><span class="k2">(</span>bx<span class="k3">&lt;</span>pp <span class="k3">|</span><span class="k3">|</span> bx&gt;pp<span class="k3">+</span>ln<span class="k2">)</span><span class="k1">goto</span> gover<span class="k2">;</span>score<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>ln-<span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">14</td><td>bx<span class="k3">+</span><span class="k3">=</span>incx<span class="k2">;</span>by<span class="k3">+</span><span class="k3">=</span>incy<span class="k2">;</span> <span class="k1">if</span><span class="k2">(</span>by<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>incy<span class="k3">=</span><span class="n">5</span><span class="k2">;</span>incx<span class="k3">=</span>CS<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><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>pp<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><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>pp-<span class="k3">=</span><span class="n">10</span><span class="k2">;</span></td></tr><tr><td class="number">16</td><td><a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>b, pp,<span class="n">460</span>,pp<span class="k3">+</span>ln,<span class="n">470</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">200</span>,<span class="n">200</span>,<span class="n">120</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">17</td><td><a href="http://www.allegro.cc/manual/circle" target="_blank"><span class="a">circle</span></a><span class="k2">(</span>b, bx, by, <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></td></tr><tr><td class="number">18</td><td>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">0</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span>,<span class="s">"SCORE: %d"</span>,score<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">19</td><td><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><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="k2">}</span> <span class="k1">return</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td>gover: <a href="http://www.allegro.cc/manual/alert" target="_blank"><span class="a">alert</span></a><span class="k2">(</span><span class="n">0</span>,<span class="s">"GAME OVER"</span>,<span class="n">0</span>,<span class="s">"OK"</span>,<span class="n">0</span>,<span class="s">'o'</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span><span class="k1">goto</span> st<span class="k2">;</span></td></tr><tr><td class="number">21</td><td><span class="k2">}</span><a href="http://www.allegro.cc/manual/END_OF_MAIN" target="_blank"><span class="a">END_OF_MAIN</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr></tbody></table></div></div><p>

</p><div class="source-code snippet"><div class="inner"><pre><span class="p">#include &lt;windows.h&gt;</span>
<span class="p">#include &lt;stdio.h&gt;</span>

<span class="k1">void</span> main<span class="k2">(</span><span class="k1">void</span><span class="k2">)</span>
<span class="k2">{</span>
<span class="k1">char</span> <span class="k3">*</span>ct_dir<span class="k3">=</span><span class="s">"C:\\Program Files\\Crazy Taxi\\"</span><span class="k2">;</span>
<span class="k1">char</span> ct_exe<span class="k2">[</span><span class="n">256</span><span class="k2">]</span><span class="k2">;</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_737.html" target="_blank">sprintf</a><span class="k2">(</span>ct_exe, <span class="s">"%sCrazy_Taxi_PC.exe"</span>,ct_dir<span class="k2">)</span><span class="k2">;</span>

ShellExecute<span class="k2">(</span><span class="n">0</span>,<span class="s">"open"</span>,ct_exe, <span class="n">0</span>, ct_dir, SW_NORMAL<span class="k2">)</span><span class="k2">;</span>
<span class="k2">}</span>
</pre></div></div><p>

<img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (LSd016)</author>
		<pubDate>Mon, 09 Feb 2004 05:19:33 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Here is my entry.  This is my first C project in around three years, it felt good stretch my gaming legs again.  Let me know if you find any problems.  Left and Right to move, Space to fire, ESC to quit.  You&#39;ve got three lives, but it doesn&#39;t automatically exit once you&#39;re dead.</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;          /*BLASTER     2004-2-8  Brian Glenn (Breakman79)*/</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><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> A<span class="k3">=</span><span class="n">304</span>,C,D<span class="k3">=</span><span class="k3">-</span><span class="n">1</span>,E<span class="k3">=</span><span class="n">0</span>,F<span class="k3">=</span><span class="n">0</span>,G,H<span class="k3">=</span><span class="n">3</span>,I,J<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,K<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,L<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,M<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,N<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,O<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,P</td></tr><tr><td class="number">4</td><td><span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k2">;</span><span class="k1">float</span> Q<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k1">void</span> dh<span class="k2">(</span><span class="k1">int</span> X<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>H&gt;<span class="k3">=</span><span class="n">3</span><span class="k2">)</span>I<span class="k3">=</span><span class="n">31</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>H<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span>I<span class="k3">=</span><span class="n">65504</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>H<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span>I<span class="k3">=</span><span class="n">64512</span><span class="k2">;</span></td></tr><tr><td class="number">5</td><td><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>B,X<span class="k3">+</span><span class="n">16</span>,<span class="n">456</span>,X<span class="k3">+</span><span class="n">32</span>,<span class="n">468</span>,I<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="n">468</span>,X<span class="k3">+</span><span class="n">48</span>,<span class="n">480</span>,I<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> de<span class="k2">(</span><span class="k1">int</span> X, <span class="k1">int</span></td></tr><tr><td class="number">6</td><td>Y<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><span class="n">16</span>,Y<span class="k3">+</span><span class="n">12</span>,<span class="n">45270</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="k3">+</span><span class="n">32</span>,Y,X<span class="k3">+</span><span class="n">48</span>,Y<span class="k3">+</span><span class="n">12</span>,<span class="n">45270</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</td></tr><tr><td class="number">7</td><td>,X<span class="k3">+</span><span class="n">16</span>,Y<span class="k3">+</span><span class="n">12</span>,X<span class="k3">+</span><span class="n">32</span>,Y<span class="k3">+</span><span class="n">24</span>,<span class="n">45270</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> db<span class="k2">(</span><span class="k1">int</span> X,<span class="k1">int</span> Y,<span class="k1">int</span> I<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><span class="n">16</span>,Y<span class="k3">+</span><span class="n">12</span></td></tr><tr><td class="number">8</td><td>,I<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> se<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>F<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>Q<span class="k3">+</span><span class="k3">=</span>.<span class="n">5</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>E<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>E<span class="k3">&lt;</span>F<span class="k2">;</span>E<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>J<span class="k2">[</span>E<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>K<span class="k2">[</span>E<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">591</span><span class="k2">;</span>L<span class="k2">[</span>E<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">350</span></td></tr><tr><td class="number">9</td><td><span class="k2">;</span>P<span class="k2">[</span>E<span class="k2">]</span><span class="k3">=</span><span class="n">500</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>se<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></td></tr><tr><td class="number">10</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>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">if</span><span class="k2">(</span><span class="k3">!</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,<span class="n">640</span></td></tr><tr><td class="number">11</td><td>,<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="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="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>A<span class="k3">&lt;</span><span class="n">591</span><span class="k2">)</span>A<span class="k3">+</span><span class="k3">=</span><span class="n">8</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="k3">&amp;</span><span class="k3">&amp;</span></td></tr><tr><td class="number">12</td><td>A&gt;0<span class="k2">)</span>A-<span class="k3">=</span><span class="n">8</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><span class="k2">{</span>C<span class="k3">=</span>A<span class="k3">+</span><span class="n">16</span><span class="k2">;</span>D<span class="k3">=</span><span class="n">456</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>G<span class="k3">=</span><span class="k3">=</span><span class="n">5</span><span class="k3">*</span>F<span class="k2">)</span>se<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>G<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>E<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>E<span class="k3">&lt;</span>F<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></td></tr><tr><td class="number">13</td><td><span class="k2">(</span>J<span class="k2">[</span>E<span class="k2">]</span><span class="k3">&lt;</span><span class="n">5</span><span class="k3">&amp;</span><span class="k3">&amp;</span>C<span class="k3">&lt;</span>K<span class="k2">[</span>E<span class="k2">]</span><span class="k3">+</span><span class="n">48</span><span class="k3">&amp;</span><span class="k3">&amp;</span>C<span class="k3">+</span><span class="n">16</span><span class="k3">&gt;</span>K<span class="k2">[</span>E<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>D<span class="k3">&lt;</span>L<span class="k2">[</span>E<span class="k2">]</span><span class="k3">+</span><span class="n">12</span><span class="k3">&amp;</span><span class="k3">&amp;</span>D<span class="k3">+</span><span class="n">12</span><span class="k3">&gt;</span>L<span class="k2">[</span>E<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>J<span class="k2">[</span>E<span class="k2">]</span><span class="k3">=</span><span class="n">5</span><span class="k2">;</span>D<span class="k3">=</span><span class="k3">-</span><span class="n">12</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>J<span class="k2">[</span>E<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>J</td></tr><tr><td class="number">14</td><td><span class="k2">[</span>E<span class="k2">]</span><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">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>J<span class="k2">[</span>E<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k3">&amp;</span><span class="k3">&amp;</span>H<span class="k3">&lt;</span><span class="n">1</span><span class="k2">)</span>J<span class="k2">[</span>E<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>J<span class="k2">[</span>E<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>M<span class="k2">[</span>E<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">591</span><span class="k2">;</span>N<span class="k2">[</span>E<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">15</td><td><span class="n">350</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">switch</span><span class="k2">(</span>J<span class="k2">[</span>E<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">case</span> <span class="n">1</span><span class="k2">:</span><span class="k1">if</span><span class="k2">(</span>K<span class="k2">[</span>E<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span>M<span class="k2">[</span>E<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>L<span class="k2">[</span>E<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span>N<span class="k2">[</span>E<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>J<span class="k2">[</span>E<span class="k2">]</span><span class="k3">=</span><span class="n">0</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>K<span class="k2">[</span>E<span class="k2">]</span><span class="k3">&gt;</span>M<span class="k2">[</span>E<span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">16</td><td><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>K<span class="k2">[</span>E<span class="k2">]</span><span class="k3">-</span>Q&gt;M<span class="k2">[</span>E<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>K<span class="k2">[</span>E<span class="k2">]</span><span class="k3">-</span><span class="k3">=</span>Q<span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>K<span class="k2">[</span>E<span class="k2">]</span><span class="k3">=</span>M<span class="k2">[</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="k2">{</span><span class="k1">if</span><span class="k2">(</span>K<span class="k2">[</span>E<span class="k2">]</span><span class="k3">+</span>Q<span class="k3">&lt;</span>M<span class="k2">[</span>E<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>K<span class="k2">[</span>E<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>Q<span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>K<span class="k2">[</span></td></tr><tr><td class="number">17</td><td>E<span class="k2">]</span><span class="k3">=</span>M<span class="k2">[</span>E<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>L<span class="k2">[</span>E<span class="k2">]</span><span class="k3">&gt;</span>N<span class="k2">[</span>E<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>L<span class="k2">[</span>E<span class="k2">]</span><span class="k3">-</span>Q&gt;<span class="k3">=</span>N<span class="k2">[</span>E<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>L<span class="k2">[</span>E<span class="k2">]</span><span class="k3">-</span><span class="k3">=</span>Q<span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>L<span class="k2">[</span>E<span class="k2">]</span><span class="k3">=</span>N<span class="k2">[</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="k2">{</span><span class="k1">if</span><span class="k2">(</span>L<span class="k2">[</span>E<span class="k2">]</span><span class="k3">+</span></td></tr><tr><td class="number">18</td><td>Q<span class="k3">&lt;</span><span class="k3">=</span>N<span class="k2">[</span>E<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>L<span class="k2">[</span>E<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>Q<span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>L<span class="k2">[</span>E<span class="k2">]</span><span class="k3">=</span>N<span class="k2">[</span>E<span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">break</span><span class="k2">;</span><span class="k1">case</span> <span class="n">2</span><span class="k2">:</span><span class="k1">if</span><span class="k2">(</span>P<span class="k2">[</span>E<span class="k2">]</span><span class="k3">&gt;</span><span class="n">492</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>K<span class="k2">[</span>E<span class="k2">]</span><span class="k3">&gt;</span>A<span class="k3">+</span><span class="n">24</span><span class="k2">)</span><span class="k2">{</span>K<span class="k2">[</span>E<span class="k2">]</span></td></tr><tr><td class="number">19</td><td><span class="k3">-</span><span class="k3">=</span>Q<span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>K<span class="k2">[</span>E<span class="k2">]</span><span class="k3">&lt;</span>A-16<span class="k2">)</span><span class="k2">{</span>K<span class="k2">[</span>E<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>Q<span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>O<span class="k2">[</span>E<span class="k2">]</span><span class="k3">=</span>K<span class="k2">[</span>E<span class="k2">]</span><span class="k3">+</span><span class="n">16</span><span class="k2">;</span>P<span class="k2">[</span>E<span class="k2">]</span><span class="k3">=</span>L<span class="k2">[</span>E<span class="k2">]</span><span class="k3">+</span><span class="n">12</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>P<span class="k2">[</span>E<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span><span class="n">12</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td>db<span class="k2">(</span>O<span class="k2">[</span>E<span class="k2">]</span>,P<span class="k2">[</span>E<span class="k2">]</span>,<span class="n">2016</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>P<span class="k2">[</span>E<span class="k2">]</span><span class="k3">&gt;</span><span class="n">492</span><span class="k2">)</span>J<span class="k2">[</span>E<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>O<span class="k2">[</span>E<span class="k2">]</span><span class="k3">&lt;</span>A<span class="k3">+</span><span class="n">48</span><span class="k3">&amp;</span><span class="k3">&amp;</span>O<span class="k2">[</span>E<span class="k2">]</span><span class="k3">+</span><span class="n">16</span><span class="k3">&gt;</span>A<span class="k3">&amp;</span><span class="k3">&amp;</span>P<span class="k2">[</span>E<span class="k2">]</span><span class="k3">&lt;</span><span class="n">480</span><span class="k3">&amp;</span><span class="k3">&amp;</span>P<span class="k2">[</span>E<span class="k2">]</span><span class="k3">+</span><span class="n">12</span></td></tr><tr><td class="number">21</td><td><span class="k3">&gt;</span><span class="n">468</span><span class="k2">)</span><span class="k2">{</span>H--<span class="k2">;</span>P<span class="k2">[</span>E<span class="k2">]</span><span class="k3">=</span><span class="n">500</span><span class="k2">;</span>J<span class="k2">[</span>E<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="k2">}</span><span class="k1">if</span><span class="k2">(</span>J<span class="k2">[</span>E<span class="k2">]</span><span class="k3">&lt;</span><span class="n">5</span><span class="k2">)</span>de<span class="k2">(</span>K<span class="k2">[</span>E<span class="k2">]</span>,L<span class="k2">[</span>E<span class="k2">]</span><span class="k2">)</span><span class="k2">;</span>G<span class="k3">+</span><span class="k3">=</span>J<span class="k2">[</span>E<span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>D&gt;-12<span class="k2">)</span><span class="k2">{</span>D-<span class="k3">=</span><span class="n">12</span><span class="k2">;</span>db</td></tr><tr><td class="number">22</td><td><span class="k2">(</span>C,D,<span class="n">63488</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>H&gt;0<span class="k2">)</span>dh<span class="k2">(</span>A<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><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_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><span class="k2">(</span>B<span class="k2">)</span></td></tr><tr><td class="number">23</td><td><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="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>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Breakman79)</author>
		<pubDate>Mon, 09 Feb 2004 09:43:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Nice game with nice gameplay! <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> Could you add a score/level indicator? <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" /></p><p>edit: err.. funny bug: you can still shoot when you are dead. <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Mon, 09 Feb 2004 09:52:18 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Breakman79: To shrink the code more, possibly add a function that replaces rectfill, but give it a one letter name. That may or may not shrink your code. Also replace GFX_AUTODETECT with it&#39;s number equivilent. Then maybe you can fit in some game features.</p><p>EDIT: and replace NULL with 0<br />EDIT2: and replace the KEY_* with their number equivilents. You got loads of space!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Mon, 09 Feb 2004 10:14:40 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ok, guys, I&#39;ll try out some your suggestions and see if I can get a level and score indicator going.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>err.. funny bug: you can still shoot when you are dead.</p></div></div><p>


Oops, forgot to put a check on the fire button.  Thanks.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Breakman79)</author>
		<pubDate>Mon, 09 Feb 2004 10:26:11 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I made a simple tank sort of game. control with WADS and Q to shoot. I think the crappest thing about it is that nothing cool happens if someone gets shot... they just reappear in the middle of the screen.<br />The computer&#39;s tank can move without turning it&#39;s turret, but the player&#39;s tank moves a little bit faster, and can move diagonally. So I can say that each player has it&#39;s own unique abilities. <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />  Also, I put a few racing strips in the code, so it should run pretty fast <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />. It makes the code look slightly less like a blob of rubbish. very slightly...<br />I call it &quot;Didn&#39;t your mother ever tell you not to play with macros?&quot;
</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="k1">struct</span><span class="k2">{</span>  <span class="k1">int</span> x, y, dx, dy<span class="k2">;</span><span class="k2">}</span>  a<span class="k2">[</span><span class="n">9</span><span class="k2">]</span>, b<span class="k2">[</span><span class="n">9</span><span class="k2">]</span><span class="k2">;</span>  <span class="k1">int</span> ca<span class="k3">=</span><span class="n">1</span>,   cb<span class="k3">=</span><span class="n">1</span>,i,aic<span class="k3">=</span><span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">3</td><td><span class="k1">volatile</span> <span class="k1">int</span> click<span class="k3">=</span><span class="n">0</span><span class="k2">;</span> <span class="k1">void</span>   Click<span class="k2">(</span><span class="k1">void</span><span class="k2">)</span>  <span class="k2">{</span>click<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>Click<span class="k2">)</span></td></tr><tr><td class="number">4</td><td><span class="p">#define  shoot(p)     {p[c##p] = p[0];    p[c##p].x   +=4;p[c##p].y+=4;\</span></td></tr><tr><td class="number">5</td><td><span class="p"> p[c##p] .dx*=5;      p[c##p].dy*=5;      c##p=        (c##p &lt; 7)?c##p+1:1; } </span></td></tr><tr><td class="number">6</td><td><span class="p">#define  bet(x,   l,  u) (x &lt; u &amp;&amp; x      &gt;= l)</span></td></tr><tr><td class="number">7</td><td><span class="p">#define  con(b,mx,my) if(key&lt;b&gt;){a[0].dx =mx;a[0].dy =my;a[0].x+=mx;a[0].y+=my;}</span></td></tr><tr><td class="number">8</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/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><span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a></td></tr><tr><td class="number">9</td><td><span class="k2">(</span>GFX_AUTODETECT_FULLSCREEN,<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="k1">return</span> <span class="n">1</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>Click<span class="k2">)</span></td></tr><tr><td class="number">10</td><td><a href="http://www.allegro.cc/manual/LOCK_VARIABLE" target="_blank"><span class="a">LOCK_VARIABLE</span></a><span class="k2">(</span>click<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>Click,   <span class="n">15</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>a,<span class="n">0</span>,<span class="k1">sizeof</span><span class="k2">(</span>a<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>b,<span class="n">0</span>,</td></tr><tr><td class="number">11</td><td><span class="k1">sizeof</span><span class="k2">(</span>b<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>a<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.x<span class="k3">=</span>a<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.y<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.x<span class="k3">=</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.y <span class="k3">=</span><span class="n">470</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="k1">while</span><span class="k2">(</span>click<span class="k2">)</span></td></tr><tr><td class="number">12</td><td><span class="k2">{</span>click--<span class="k2">;</span>aic<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_Q<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>shoot<span class="k2">(</span>a<span class="k2">)</span><span class="k2">}</span>con  <span class="k2">(</span>KEY_W,<span class="n">0</span>,<span class="k3">-</span><span class="n">1</span><span class="k2">)</span>con<span class="k2">(</span>KEY_A,<span class="k3">-</span><span class="n">1</span>,<span class="n">0</span><span class="k2">)</span>con<span class="k2">(</span>KEY_D</td></tr><tr><td class="number">13</td><td>,<span class="n">1</span>,<span class="n">0</span><span class="k2">)</span>con<span class="k2">(</span>KEY_S,<span class="n">0</span>,<span class="n">1</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>aic%<span class="n">7</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>bet  <span class="k2">(</span><span class="k2">(</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>  .x-a<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> .x<span class="k2">)</span>,<span class="n">0</span>, <span class="n">4</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.dx  <span class="k3">=</span><span class="n">0</span><span class="k2">;</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span></td></tr><tr><td class="number">14</td><td>.dy<span class="k3">=</span> <span class="k2">(</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.y <span class="k3">&gt;</span> a<span class="k2">[</span><span class="n">0</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="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k2">(</span>b<span class="k2">[</span>cb<span class="k2">]</span>.dx<span class="k3">+</span>b  <span class="k2">[</span>cb<span class="k2">]</span>.dy<span class="k2">)</span><span class="k2">)</span> shoot<span class="k2">(</span>b<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>bet<span class="k2">(</span></td></tr><tr><td class="number">15</td><td><span class="k2">(</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.y <span class="k3">-</span> a<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="n">4</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.dx <span class="k3">=</span> <span class="k2">(</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.x  <span class="k3">&gt;</span>a<span class="k2">[</span><span class="n">0</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="n">1</span><span class="k2">;</span> b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.dy<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="k2">(</span>b<span class="k2">[</span>cb<span class="k2">]</span></td></tr><tr><td class="number">16</td><td>.dx<span class="k3">+</span>b<span class="k2">[</span>cb<span class="k2">]</span>.dy<span class="k2">)</span><span class="k2">)</span>shoot<span class="k2">(</span>b<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.delorie.com/djgpp/doc/libc/libc_38.html" target="_blank">abs</a><span class="k2">(</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.x-  a<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.x<span class="k2">)</span><span class="k3">&lt;</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_38.html" target="_blank">abs</a><span class="k2">(</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.y <span class="k3">-</span> a<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.y<span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.</td></tr><tr><td class="number">17</td><td>x<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.x&gt;a<span class="k2">[</span><span class="n">0</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="n">1</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.y<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>b<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>  .y&gt;a<span class="k2">[</span><span class="n">0</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="n">1</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="p">#define move(p,e,o)if(bet(640-p[o].x,1,640    )&amp;&amp;bet  (480-p[o].y,1,480)){p[o]\</span></td></tr><tr><td class="number">19</td><td><span class="p">.x+=p[o]. dx;p[o].y+=p[o].dy;if(bet (p[o]   .x-e[0] .x,0,10)&amp;&amp;bet(p[o].y-e[0]\ </span></td></tr><tr><td class="number">20</td><td><span class="p">.y,0,10)) {e[0].x=300; e[0].y=200;}}else  {p[o].dx=p   [o].dy=0;p[o].x=-9;} </span></td></tr><tr><td class="number">21</td><td><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">9</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>    <span class="k2">{</span>move<span class="k2">(</span>b,a,i<span class="k2">)</span>       move<span class="k2">(</span>a,b,i<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></td></tr><tr><td class="number">22</td><td><span class="p">#define draw(p,o,s,c)rectfill(screen, p[o].x,p[o] .y,p[o].x+s,p[o].y+s,c);line(\</span></td></tr><tr><td class="number">23</td><td><span class="p">screen,  p[o].x+s/2,p[o].y+s/2,p[o].  x+s*(.5+p[o].dx),p[o].y+s*(.5+p[o].dy),c); </span></td></tr><tr><td class="number">24</td><td>draw<span class="k2">(</span>a,    <span class="n">0</span>,<span class="n">10</span>,<span class="n">2</span><span class="k2">)</span>draw  <span class="k2">(</span>b,<span class="n">0</span>,<span class="n">10</span>,<span class="n">4</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">9</span><span class="k2">;</span>i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>   draw<span class="k2">(</span>a,i,<span class="n">1</span>,<span class="n">15</span><span class="k2">)</span></td></tr><tr><td class="number">25</td><td>draw<span class="k2">(</span>b,    i,<span class="n">1</span>,<span class="n">15</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>

[edit]<br />I decided I would make and post my game before I looked at anyone else&#39;s.<br />Now that I&#39;ve posted my game, and looked at the others, I&#39;m beginning to think that I should take out those silly strips and fix my game up a bit!<br />I reckon Elias has the best so far.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Karadoc ~~)</author>
		<pubDate>Mon, 09 Feb 2004 11:31:29 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Nuinio: I don&#39;t have any problems with your site if gb doesn&#39;t, I was just saying he should probably get dibs.  Anyway, I like your layout an all; some nitpicks about it, though:</p><p>1) You offer the entries as zipfile downloads -- is that really necessary?  I mean, they are very small single text files, no datafiles allowed.  It would be much more convenient if they were just .c or .cpp files, or even if they were inserted inline.<br />2) A short description of each game would be nice, and easy to include since most entries have explanations by the author posted alongside.<br />3) It would be nice if there were more games there than just your own <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Mon, 09 Feb 2004 12:57:20 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>1) You offer the entries as zipfile downloads -- is that really necessary? I mean, they are very small single text files, no datafiles allowed. It would be much more convenient if they were just .c or .cpp files, or even if they were inserted inline.</p><p>2) A short description of each game would be nice, and easy to include since most entries have explanations by the author posted alongside.</p></div></div><p>

That was the initial idea. Well, I think I&#39;ll do it both ways: &#39;inline&#39; .C and .CPP files with a screen shot the game description, and two (or more) ZIP files with all sources or binaries for DOS and Window$ (I&#39;m not sure if I can also Linux)</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>3) It would be nice if there were more games there than just your own <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /></p></div></div><p>

Hey! It&#39;s my web site! I can do whatever I want! </p><p>Just kidding...</p><p>When I&#39;d finished the definitive web design it was late (22:00pm at local time) and today I must get up early (now, I&#39;m at office, &#39;working&#39;;)) and I didn&#39;t test all entries of this thread yet...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Niunio)</author>
		<pubDate>Mon, 09 Feb 2004 13:54:07 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Here is my entry...&quot;Swat The BugZ&quot;. Use the mouse to swat the bugs!!</p><p>It&#39;s pretty trivial and lame and... Earlier I was getting hardly 16 lines. So I made a title screen...nothing much really.</p><p>Hope you like it...(ALthough i know its far from the level of other entries)Do send me suggestions and comments...<br />I&#39;m just 15, so try not to be too harsh with your comments!!;)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Harpreet Singh)</author>
		<pubDate>Mon, 09 Feb 2004 14:03:41 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ok, here&#39;s my new and improved version.  Fixed the bug where you could still fire after game over.  Added Score, Level, and Game Over indicators.  Have fun!</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; /*BLASTER  Destroy the enemy bombers before they get you.*/     </span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;time.h&gt;   /*Controls: Left-Right to move, Space to fire, ESC to quit*/</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>a<span class="k2">;</span><span class="k1">int</span> b<span class="k3">=</span><span class="n">304</span>,c,d<span class="k3">=</span><span class="k3">-</span><span class="n">1</span>,e<span class="k3">=</span><span class="n">0</span>,f<span class="k3">=</span><span class="n">0</span>,g,h<span class="k3">=</span><span class="n">3</span>,i,j<span class="k3">=</span><span class="n">0</span>,k<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,l<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,m<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,n<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,o<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,p<span class="k2">[</span></td></tr><tr><td class="number">4</td><td><span class="n">99</span><span class="k2">]</span>,q<span class="k2">[</span><span class="n">99</span><span class="k2">]</span><span class="k2">;</span><span class="k1">float</span> r<span class="k3">=</span><span class="n">4</span><span class="k2">;</span><span class="k1">void</span> rf<span class="k2">(</span><span class="k1">int</span> s,<span class="k1">int</span> t,<span class="k1">int</span> u,<span class="k1">int</span> v,<span class="k1">int</span> i<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>a,s,t,u,v,i<span class="k2">)</span></td></tr><tr><td class="number">5</td><td><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> dh<span class="k2">(</span><span class="k1">int</span> x<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>h&gt;<span class="k3">=</span><span class="n">3</span><span class="k2">)</span>i<span class="k3">=</span><span class="n">31</span><span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>h<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span>i<span class="k3">=</span><span class="n">65504</span><span class="k2">;</span><span class="k1">else</span> i<span class="k3">=</span><span class="n">64512</span><span class="k2">;</span>rf<span class="k2">(</span>x<span class="k3">+</span><span class="n">16</span>,<span class="n">456</span>,x<span class="k3">+</span><span class="n">32</span></td></tr><tr><td class="number">6</td><td>,<span class="n">468</span>,i<span class="k2">)</span><span class="k2">;</span>rf<span class="k2">(</span>x,<span class="n">468</span>,x<span class="k3">+</span><span class="n">48</span>,<span class="n">480</span>,i<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> de<span class="k2">(</span><span class="k1">int</span> x,<span class="k1">int</span> y<span class="k2">)</span><span class="k2">{</span>rf<span class="k2">(</span>x,y,x<span class="k3">+</span><span class="n">16</span>,y<span class="k3">+</span><span class="n">12</span>,<span class="n">45270</span><span class="k2">)</span><span class="k2">;</span>rf<span class="k2">(</span>x</td></tr><tr><td class="number">7</td><td><span class="k3">+</span><span class="n">32</span>,y,x<span class="k3">+</span><span class="n">48</span>,y<span class="k3">+</span><span class="n">12</span>,<span class="n">45270</span><span class="k2">)</span><span class="k2">;</span>rf<span class="k2">(</span>x<span class="k3">+</span><span class="n">16</span>,y<span class="k3">+</span><span class="n">12</span>,x<span class="k3">+</span><span class="n">32</span>,y<span class="k3">+</span><span class="n">24</span>,<span class="n">45270</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> db<span class="k2">(</span><span class="k1">int</span> x,<span class="k1">int</span> y,<span class="k1">int</span> i<span class="k2">)</span></td></tr><tr><td class="number">8</td><td><span class="k2">{</span>rf<span class="k2">(</span>x,y,x<span class="k3">+</span><span class="n">16</span>,y<span class="k3">+</span><span class="n">12</span>,i<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> se<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>f<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>r<span class="k3">+</span><span class="k3">=</span>.<span class="n">5</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>e<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>e<span class="k3">&lt;</span>f<span class="k2">;</span>e<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>k<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span><span class="n">0</span><span class="k2">;</span>l<span class="k2">[</span>e<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">9</td><td><span class="n">591</span><span class="k2">;</span>m<span class="k2">[</span>e<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">350</span><span class="k2">;</span>q<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span><span class="n">500</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>se<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">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/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<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">if</span><span class="k2">(</span><span class="k3">!</span><a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a></td></tr><tr><td class="number">11</td><td><span class="k2">(</span><span class="n">0</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><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="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>b<span class="k3">&lt;</span><span class="n">591</span><span class="k2">)</span>b<span class="k3">+</span><span class="k3">=</span><span class="n">8</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">12</td><td>KEY_LEFT<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>b&gt;0<span class="k2">)</span>b-<span class="k3">=</span><span class="n">8</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>h&gt;0<span class="k2">)</span><span class="k2">{</span>c<span class="k3">=</span>b<span class="k3">+</span><span class="n">16</span><span class="k2">;</span>d<span class="k3">=</span><span class="n">456</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>g<span class="k3">=</span><span class="k3">=</span><span class="n">5</span><span class="k3">*</span>f<span class="k2">)</span>se<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>g<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k1">for</span></td></tr><tr><td class="number">13</td><td><span class="k2">(</span>e<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>e<span class="k3">&lt;</span>f<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>k<span class="k2">[</span>e<span class="k2">]</span><span class="k3">&lt;</span><span class="n">5</span><span class="k3">&amp;</span><span class="k3">&amp;</span>c<span class="k3">&lt;</span>l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">+</span><span class="n">48</span><span class="k3">&amp;</span><span class="k3">&amp;</span>c<span class="k3">+</span><span class="n">16</span><span class="k3">&gt;</span>l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>d<span class="k3">&lt;</span>m<span class="k2">[</span>e<span class="k2">]</span><span class="k3">+</span><span class="n">12</span><span class="k3">&amp;</span><span class="k3">&amp;</span>d<span class="k3">+</span><span class="n">12</span><span class="k3">&gt;</span>m<span class="k2">[</span>e<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>k<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span><span class="n">5</span><span class="k2">;</span>d<span class="k3">=</span><span class="k3">-</span></td></tr><tr><td class="number">14</td><td><span class="n">12</span><span class="k2">;</span>j<span class="k3">+</span><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>k<span class="k2">[</span>e<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>k<span class="k2">[</span>e<span class="k2">]</span><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">2</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>k<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k3">&amp;</span><span class="k3">&amp;</span>h<span class="k3">&lt;</span><span class="n">1</span><span class="k2">)</span>k<span class="k2">[</span>e<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>k<span class="k2">[</span>e<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>n<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span></td></tr><tr><td class="number">15</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">591</span><span class="k2">;</span>o<span class="k2">[</span>e<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">350</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">switch</span><span class="k2">(</span>k<span class="k2">[</span>e<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">case</span> <span class="n">1</span><span class="k2">:</span><span class="k1">if</span><span class="k2">(</span>l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span>n<span class="k2">[</span>e<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>m<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span><span class="k3">=</span>o<span class="k2">[</span>e<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>k<span class="k2">[</span>e<span class="k2">]</span></td></tr><tr><td class="number">16</td><td><span class="k3">=</span><span class="n">0</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>l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">&gt;</span>n<span class="k2">[</span>e<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">-</span>r&gt;n<span class="k2">[</span>e<span class="k2">]</span><span class="k2">)</span>l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">-</span><span class="k3">=</span>r<span class="k2">;</span><span class="k1">else</span> l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span>n<span class="k2">[</span>e<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>l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">+</span>r<span class="k3">&lt;</span>n<span class="k2">[</span></td></tr><tr><td class="number">17</td><td>e<span class="k2">]</span><span class="k2">)</span>l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>r<span class="k2">;</span><span class="k1">else</span> l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span>n<span class="k2">[</span>e<span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>m<span class="k2">[</span>e<span class="k2">]</span><span class="k3">&gt;</span>o<span class="k2">[</span>e<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>m<span class="k2">[</span>e<span class="k2">]</span><span class="k3">-</span>r&gt;<span class="k3">=</span>o<span class="k2">[</span>e<span class="k2">]</span><span class="k2">)</span>m<span class="k2">[</span>e<span class="k2">]</span><span class="k3">-</span><span class="k3">=</span>r<span class="k2">;</span><span class="k1">else</span> m<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span>o<span class="k2">[</span>e<span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td><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="k2">[</span>e<span class="k2">]</span><span class="k3">+</span>r<span class="k3">&lt;</span><span class="k3">=</span>o<span class="k2">[</span>e<span class="k2">]</span><span class="k2">)</span>m<span class="k2">[</span>e<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>r<span class="k2">;</span><span class="k1">else</span> m<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span>o<span class="k2">[</span>e<span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k1">break</span><span class="k2">;</span><span class="k1">case</span> <span class="n">2</span><span class="k2">:</span><span class="k1">if</span><span class="k2">(</span>q<span class="k2">[</span>e<span class="k2">]</span><span class="k3">&gt;</span><span class="n">492</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">&gt;</span></td></tr><tr><td class="number">19</td><td>b<span class="k3">+</span><span class="n">24</span><span class="k2">)</span>l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">-</span><span class="k3">=</span>r<span class="k2">;</span><span class="k1">else</span> <span class="k1">if</span><span class="k2">(</span>l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">&lt;</span>b-16<span class="k2">)</span>l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>r<span class="k2">;</span><span class="k1">else</span><span class="k2">{</span>p<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span>l<span class="k2">[</span>e<span class="k2">]</span><span class="k3">+</span><span class="n">16</span><span class="k2">;</span>q<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span>m<span class="k2">[</span>e<span class="k2">]</span><span class="k3">+</span><span class="n">12</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">else</span><span class="k2">{</span>q<span class="k2">[</span>e</td></tr><tr><td class="number">20</td><td><span class="k2">]</span><span class="k3">+</span><span class="k3">=</span><span class="n">12</span><span class="k2">;</span>db<span class="k2">(</span>p<span class="k2">[</span>e<span class="k2">]</span>,q<span class="k2">[</span>e<span class="k2">]</span>,<span class="n">2016</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>q<span class="k2">[</span>e<span class="k2">]</span><span class="k3">&gt;</span><span class="n">492</span><span class="k2">)</span>k<span class="k2">[</span>e<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>p<span class="k2">[</span>e<span class="k2">]</span><span class="k3">&lt;</span>b<span class="k3">+</span><span class="n">48</span><span class="k3">&amp;</span><span class="k3">&amp;</span>p<span class="k2">[</span>e<span class="k2">]</span><span class="k3">+</span><span class="n">16</span><span class="k3">&gt;</span>b<span class="k3">&amp;</span><span class="k3">&amp;</span>q<span class="k2">[</span>e<span class="k2">]</span><span class="k3">&lt;</span><span class="n">480</span><span class="k3">&amp;</span><span class="k3">&amp;</span></td></tr><tr><td class="number">21</td><td>q<span class="k2">[</span>e<span class="k2">]</span><span class="k3">+</span><span class="n">12</span><span class="k3">&gt;</span><span class="n">468</span><span class="k2">)</span><span class="k2">{</span>h--<span class="k2">;</span>q<span class="k2">[</span>e<span class="k2">]</span><span class="k3">=</span><span class="n">500</span><span class="k2">;</span>k<span class="k2">[</span>e<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="k2">}</span><span class="k1">if</span><span class="k2">(</span>k<span class="k2">[</span>e<span class="k2">]</span><span class="k3">&lt;</span><span class="n">5</span><span class="k2">)</span>de<span class="k2">(</span>l<span class="k2">[</span>e<span class="k2">]</span>,m<span class="k2">[</span>e<span class="k2">]</span><span class="k2">)</span><span class="k2">;</span>g<span class="k3">+</span><span class="k3">=</span>k<span class="k2">[</span>e<span class="k2">]</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>d&gt;-12<span class="k2">)</span><span class="k2">{</span>d</td></tr><tr><td class="number">22</td><td><span class="k3">-</span><span class="k3">=</span><span class="n">12</span><span class="k2">;</span>db<span class="k2">(</span>c,d,<span class="n">63488</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>h&gt;0<span class="k2">)</span>dh<span class="k2">(</span>b<span class="k2">)</span><span class="k2">;</span><span class="k1">else</span> textprintf<span class="k2">(</span>a,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">280</span>,<span class="n">240</span>,<span class="n">65535</span>,</td></tr><tr><td class="number">23</td><td><span class="s">"GAME OVER"</span><span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</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">10</span>,<span class="n">65535</span>,<span class="s">"Score: %d"</span>,j<span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>a,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">560</span>,</td></tr><tr><td class="number">24</td><td><span class="n">10</span>,<span class="n">65535</span>,<span class="s">"Level: %d"</span>,e<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><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>a,<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_bitmap" target="_blank"><span class="a">clear_bitmap</span></a><span class="k2">(</span>a<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">25</td><td><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>a<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">/*2004-2-9  Brian Glenn (Breakman79)*/</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Breakman79)</author>
		<pubDate>Mon, 09 Feb 2004 14:55:20 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>I&#39;m just 15, so try not to be too harsh with your comments!!</p></div></div><p>You&#39;ve been coding 15 years? Dang! Your entry should easily beat everybody else&#39;s! But seriously, it&#39;s not age, it&#39;s time. I&#39;ve been coding since I was about 8 (I&#39;m 15 now), so you don&#39;t see me telling people not to be too harsh (even though my entry is pretty pathetic compared to some of the others, like that raycaster <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Mon, 09 Feb 2004 18:28:22 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Yes, time...</p><p>And not only the time you&#39;re coding (I&#39;ve been coding since I was about 12, I&#39;m 27 now;)), also the time you have to coding each day. My entry was done only in 2/3 hours because I haven&#39;t much more free time.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Niunio)</author>
		<pubDate>Mon, 09 Feb 2004 18:39:17 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ok, I squished my code a bit and managed to add some stuff improving the gameplay nicely. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> Watch out for the big red spheres bouncing here and there which aren`t much fond of your idea to pick all the coins (175 coins now). <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>William: I really didn`t mean to make a clone of your game. Enemies were supposed to be there even before coins were and of course before I`ve seen your entry.</p><p>Here`s the code. In case not to spam forum anymore any further updates will be done by changing this post. It should be compiled using C++ compiler (eg. g++) and linked with allegro and math libraries. It can complain about things like double-&gt;int conversions, missing return in main() and wrong type of main() but you should ignore this. <b>If you find any problems compiling it, please PM me. I`d like to make it portable.</b> <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>edit: code changed a bit: added missing F sqrt(F); (thanks Breakman79) <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;/****   Bartenstein 3D! by Krzysztof Kluczek (c) 2004  ****/</span></td></tr><tr><td class="number">2</td><td><span class="p">#define D(p,q)(1 p 0?m[i(X p d)][i(Y q d)]:t[4]?i(t[0]*4)|i(t[1]*4)?0: s=-1:0)&amp;&amp;</span></td></tr><tr><td class="number">3</td><td><span class="k1">typedef</span> <span class="k1">double</span> F<span class="k2">;</span><span class="k1">extern</span><span class="s">"C"</span><span class="k2">{</span>F <a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>F<span class="k2">)</span><span class="k2">;</span>F <a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>F<span class="k2">)</span><span class="k2">;</span>F <a href="http://www.delorie.com/djgpp/doc/libc/libc_49.html" target="_blank">atan</a><span class="k2">(</span>F<span class="k2">)</span><span class="k2">;</span>F <a href="http://www.delorie.com/djgpp/doc/libc/libc_738.html" target="_blank">sqrt</a><span class="k2">(</span>F<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k1">typedef</span> <span class="k1">int</span> i<span class="k2">;</span></td></tr><tr><td class="number">4</td><td>i x,y,n,l,Q<span class="k3">=</span><span class="n">0</span>,j<span class="k2">[</span><span class="n">90</span><span class="k2">]</span><span class="k2">[</span><span class="n">90</span><span class="k2">]</span>,s<span class="k2">;</span><span class="k1">char</span> m<span class="k2">[</span><span class="n">90</span><span class="k2">]</span><span class="k2">[</span><span class="n">90</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="k2">}</span>,<span class="k3">*</span>g<span class="k3">=</span><span class="k2">(</span><span class="k1">char</span><span class="k3">*</span><span class="k2">)</span>m,<span class="k3">*</span>h<span class="k3">=</span>g,<span class="k3">*</span>k<span class="k3">=</span>g,<span class="k3">*</span>p<span class="k3">=</span>g<span class="k3">+</span><span class="n">1</span>,c<span class="k2">;</span>F b,u</td></tr><tr><td class="number">5</td><td>,v,a,d,z<span class="k2">[</span><span class="n">320</span><span class="k2">]</span>,A<span class="k3">=</span><span class="n">0</span>,X<span class="k3">=</span><span class="n">1</span>.<span class="n">5</span>,Y<span class="k3">=</span><span class="n">1</span>.<span class="n">5</span>,q<span class="k2">[</span><span class="n">999</span><span class="k2">]</span><span class="k2">[</span><span class="n">9</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="k2">}</span>,<span class="k3">*</span>t<span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>w<span class="k2">;</span><a href="http://www.allegro.cc/manual/RGB" target="_blank"><span class="a">RGB</span></a> r<span class="k2">;</span>i cc<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>d<span class="k3">=</span>.<span class="n">4</span> <span class="k2">;</span><span class="k1">return</span></td></tr><tr><td class="number">6</td><td>D<span class="k2">(</span><span class="k3">-</span>,<span class="k3">-</span><span class="k2">)</span>D<span class="k2">(</span><span class="k3">-</span>,<span class="k3">+</span><span class="k2">)</span>D<span class="k2">(</span><span class="k3">+</span>,<span class="k3">-</span><span class="k2">)</span>D<span class="k2">(</span><span class="k3">+</span>,<span class="k3">+</span><span class="k2">)</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span>i 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/PACKFILE" target="_blank"><span class="a">PACKFILE</span></a><span class="k3">*</span>f</td></tr><tr><td class="number">7</td><td><span class="k3">=</span><a href="http://www.allegro.cc/manual/pack_fopen" target="_blank"><span class="a">pack_fopen</span></a><span class="k2">(</span>__FILE__,<span class="s">"r"</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">0</span>,<span class="n">320</span>,<span class="n">200</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>w<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></td></tr><tr><td class="number">8</td><td><span class="k1">while</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/pack_fgets" target="_blank"><span class="a">pack_fgets</span></a><span class="k2">(</span>p<span class="k3">+</span><span class="k3">=</span><span class="n">90</span>,<span class="n">88</span>,f<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/pack_fclose" target="_blank"><span class="a">pack_fclose</span></a><span class="k2">(</span>f<span class="k2">)</span><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">256</span><span class="k2">;</span>y<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>x<span class="k3">=</span>y<span class="k3">/</span><span class="n">4</span>,r.r<span class="k3">=</span><span class="k2">(</span>y<span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span><span class="k3">*</span>x</td></tr><tr><td class="number">9</td><td>,r.g<span class="k3">=</span>y<span class="k3">&amp;</span><span class="n">2</span>?x:0,r.b<span class="k3">=</span>y<span class="k3">&amp;</span><span class="n">4</span>?x:0,t<span class="k3">=</span>q<span class="k2">[</span>y<span class="k2">]</span>,t<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span>y-173.5,t<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">=</span><span class="n">9</span>,t<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k3">=</span><span class="k2">(</span>y&gt;174<span class="k2">)</span><span class="k3">*</span>.<span class="n">02</span>,<a href="http://www.allegro.cc/manual/set_color" target="_blank"><span class="a">set_color</span></a><span class="k2">(</span>y</td></tr><tr><td class="number">10</td><td>,<span class="k3">&amp;</span>r<span class="k2">)</span><span class="k2">;</span> <span class="k1">for</span><span class="k2">(</span><span class="k2">;</span>g<span class="k3">&lt;</span>h<span class="k3">+</span><span class="n">8100</span><span class="k2">;</span>g<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">(</span><span class="k3">*</span>g<span class="k3">&amp;</span><span class="k3">=</span><span class="n">7</span><span class="k2">)</span>^<span class="n">2</span>?<span class="n">0</span><span class="k2">:</span>j<span class="k2">[</span>i<span class="k2">(</span>q<span class="k2">[</span>Q<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>g-k<span class="k2">)</span><span class="k3">/</span><span class="n">90</span><span class="k3">+</span>.<span class="n">5</span><span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>q<span class="k2">[</span>Q<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">=</span><span class="k2">(</span>g-k<span class="k2">)</span>%<span class="n">90</span></td></tr><tr><td class="number">11</td><td><span class="k3">+</span>.<span class="n">5</span><span class="k2">)</span><span class="k2">]</span><span class="k3">=</span>Q<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>s<span class="k3">=</span>Q<span class="k2">;</span>Q<span class="k3">+</span><span class="k3">=</span><span class="n">80</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>s&gt;0<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">59</span><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>g<span class="k3">=</span>m<span class="k2">[</span>i<span class="k2">(</span>X<span class="k2">)</span><span class="k2">]</span><span class="k3">+</span>i<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>g<span class="k3">=</span><span class="k3">=</span><span class="n">7</span><span class="k2">)</span><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">1740</span></td></tr><tr><td class="number">12</td><td><span class="k2">;</span>y<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>y%<span class="n">30</span><span class="k2">)</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><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>w,<a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,<span class="n">199</span>,<span class="n">0</span>,<span class="n">199</span><span class="k3">-</span>y,<span class="n">320</span>,<span class="n">1</span><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="k3">*</span>g<span class="k3">=</span><span class="k3">=</span><span class="n">2</span>?<span class="k3">*</span>g<span class="k3">=</span><span class="n">3</span>,s</td></tr><tr><td class="number">13</td><td><span class="k3">-</span><span class="k3">-</span>,q<span class="k2">[</span>j<span class="k2">[</span>i<span class="k2">(</span>X<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>Y<span class="k2">)</span><span class="k2">]</span><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">9</span><span class="k2">:</span><span class="n">0</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">320</span><span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">=</span>q<span class="k2">[</span>x<span class="k2">]</span><span class="k2">;</span>m<span class="k2">[</span>i<span class="k2">(</span>t<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>t<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">)</span><span class="k2">]</span>?<span class="n">0</span><span class="k2">:</span>t<span class="k2">[</span><span class="n">4</span><span class="k2">]</span></td></tr><tr><td class="number">14</td><td><span class="k3">=</span><span class="k3">-</span>t<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k2">;</span>t<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">+</span><span class="k3">=</span>t<span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k2">;</span>d<span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_49.html" target="_blank">atan</a><span class="k2">(</span><span class="k2">(</span>x-160<span class="k2">)</span><span class="k3">/</span><span class="n">200</span>.<span class="k2">)</span><span class="k2">;</span>u<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="k3">+</span>d<span class="k2">)</span><span class="k2">;</span>v<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="k3">+</span>d<span class="k2">)</span><span class="k2">;</span>b<span class="k3">=</span><span class="n">50</span>.<span class="n">0</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>d<span class="k2">)</span><span class="k3">+</span><span class="n">10</span> <span class="k2">;</span></td></tr><tr><td class="number">15</td><td><span class="k1">for</span><span class="k2">(</span>l<span class="k3">=</span>y<span class="k3">=</span><span class="n">100</span><span class="k2">;</span>y&gt;0<span class="k2">;</span><span class="k2">)</span>c<span class="k3">=</span>y&gt;9?m<span class="k2">[</span>i<span class="k2">(</span>b<span class="k3">/</span>y<span class="k3">*</span>u<span class="k3">+</span>X<span class="k2">)</span><span class="k2">]</span><span class="k2">[</span>i<span class="k2">(</span>b<span class="k3">/</span>y<span class="k3">*</span>v<span class="k3">+</span>Y<span class="k2">)</span><span class="k2">]</span><span class="k3">+</span><span class="n">2</span><span class="k3">*</span><span class="k2">(</span>y<span class="k3">&amp;</span>~<span class="n">3</span><span class="k2">)</span><span class="k2">:</span><span class="n">0</span>,c<span class="k3">+</span><span class="k3">+</span><span class="k3">&amp;</span><span class="n">7</span>?c<span class="k3">&amp;</span><span class="n">7</span>?<a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>w,x,</td></tr><tr><td class="number">16</td><td><span class="n">99</span><span class="k3">+</span>y,<span class="n">99</span><span class="k3">+</span>l,c<span class="k2">)</span>,<span class="n">0</span><span class="k2">:</span><span class="n">0</span>,<a href="http://www.allegro.cc/manual/putpixel" target="_blank"><span class="a">putpixel</span></a><span class="k2">(</span>w,x,<span class="n">100</span><span class="k3">-</span>y,c<span class="k2">)</span>,<span class="n">0</span><span class="k2">:</span><span class="k2">(</span>z<span class="k2">[</span>x<span class="k2">]</span><span class="k3">=</span>b<span class="k3">/</span>y,<a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>w,x,<span class="n">99</span><span class="k3">+</span>l,<span class="n">100</span><span class="k3">-</span>y,c<span class="k2">)</span>,y<span class="k3">=</span><span class="n">0</span><span class="k2">)</span>,</td></tr><tr><td class="number">17</td><td>y--,l<span class="k3">=</span>c<span class="k3">&amp;</span><span class="n">7</span>?y:l<span class="k2">;</span><span class="k2">}</span>u<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>v<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="k1">for</span><span class="k2">(</span>l<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>l<span class="k3">&lt;</span>Q<span class="k2">;</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>t<span class="k3">=</span>q<span class="k2">[</span>l<span class="k2">]</span>,a<span class="k3">=</span>t<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k3">-</span>X,b<span class="k3">=</span>t<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k3">-</span>Y,t<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">=</span>a</td></tr><tr><td class="number">18</td><td><span class="k3">*</span>u<span class="k3">+</span>b<span class="k3">*</span>v,t<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">=</span>b<span class="k3">*</span>u-a<span class="k3">*</span>v,D<span class="k2">(</span><span class="k3">*</span>,<span class="k3">*</span><span class="k2">)</span><span class="n">1</span><span class="k2">;</span>u<span class="k3">=</span><span class="n">9</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>v<span class="k3">=</span><span class="n">0</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>Q<span class="k2">;</span>x<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>a<span class="k3">=</span>q<span class="k2">[</span>x<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span>,v<span class="k3">&lt;</span>a<span class="k3">&amp;</span><span class="k3">&amp;</span>a<span class="k3">&lt;</span>u?</td></tr><tr><td class="number">19</td><td>l<span class="k3">=</span>x,v<span class="k3">=</span>a:0<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>v<span class="k3">&lt;</span>.<span class="n">1</span><span class="k2">)</span><span class="k1">break</span><span class="k2">;</span>u<span class="k3">=</span>v<span class="k2">;</span>t<span class="k3">=</span>q<span class="k2">[</span>l<span class="k2">]</span><span class="k2">;</span>d<span class="k3">=</span><span class="n">160</span><span class="k3">+</span><span class="n">200</span><span class="k3">*</span>t<span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">/</span>t<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">;</span>a<span class="k3">=</span><span class="k2">(</span><span class="n">16</span><span class="k3">&lt;</span><span class="k3">&lt;</span><span class="k2">(</span>l&gt;174<span class="k2">)</span><span class="k2">)</span><span class="k3">/</span>t<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></td></tr><tr><td class="number">20</td><td>n<span class="k3">=</span><span class="k3">-</span>a<span class="k2">;</span>x<span class="k3">=</span>d<span class="k3">+</span>n,n<span class="k3">&lt;</span><span class="k3">=</span>a<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>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">320</span><span class="k3">&amp;</span><span class="k3">&amp;</span>z<span class="k2">[</span>x<span class="k2">]</span><span class="k3">&gt;</span>t<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">+</span>.<span class="n">3</span><span class="k2">)</span>y<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_738.html" target="_blank">sqrt</a><span class="k2">(</span>a <span class="k3">*</span>a-n<span class="k3">*</span>n<span class="k2">)</span>,<a href="http://www.allegro.cc/manual/vline" target="_blank"><span class="a">vline</span></a><span class="k2">(</span>w,x,<span class="n">99</span><span class="k3">-</span>y</td></tr><tr><td class="number">21</td><td>,<span class="n">100</span><span class="k3">+</span>y,<span class="n">251</span><span class="k3">-</span><span class="n">8</span><span class="k3">*</span>i<span class="k2">(</span>t<span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k3">*</span><span class="n">4</span><span class="k2">)</span><span class="k3">-</span><span class="n">2</span><span class="k3">*</span><span class="k2">(</span>l&gt;174<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>a<span class="k3">=</span><span class="n">0</span>.<span class="n">07</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>?A-<span class="k3">=</span>a:key<span class="k2">[</span><span class="n">83</span><span class="k2">]</span>?A<span class="k3">+</span><span class="k3">=</span>a:0<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="n">0</span><span class="k2">:</span></td></tr><tr><td class="number">22</td><td>a<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="k3">-</span>a:0<span class="k2">;</span>X<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>u<span class="k3">=</span>a<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="k2">;</span>cc<span class="k2">(</span><span class="k2">)</span>?<span class="n">0</span><span class="k2">:</span>X-<span class="k3">=</span>u<span class="k2">;</span>Y<span class="k3">+</span><span class="k3">=</span><span class="k2">(</span>v<span class="k3">=</span>a<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>cc<span class="k2">(</span><span class="k2">)</span>?<span class="n">0</span><span class="k2">:</span>Y-<span class="k3">=</span>v<span class="k2">;</span>u<span class="k3">=</span><span class="n">300</span><span class="k2">;</span>v <span class="k3">=</span></td></tr><tr><td class="number">23</td><td><span class="n">20</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>w,u,v,u<span class="k3">+</span><span class="n">9</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>,v<span class="k3">+</span><span class="n">9</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="n">254</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>w,u,v,<span class="n">255</span><span class="k2">)</span><span class="k2">;</span>textprintf<span class="k2">(</span>w,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="n">0</span></td></tr><tr><td class="number">24</td><td>,<span class="n">0</span>,<span class="n">255</span>,<span class="s">"%d"</span>,s<span class="k2">)</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/vsync" target="_blank"><span class="a">vsync</span></a><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>w,<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="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>textout<span class="k2">(</span><span class="c">///</span></td></tr><tr><td class="number">25</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>,s?<span class="s">"Game Over"</span><span class="k2">:</span><span class="s">"You win!"</span>,<span class="n">124</span>,<span class="n">96</span>,<span class="n">255</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="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>
And guess how the D macro works. <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Mon, 09 Feb 2004 23:19:22 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Niunio said:</div><div class="quote"><p>
(I&#39;m not sure if I can also Linux)
</p></div></div><p>

I already compiled the non gl ones for linux.  check the attatchment of my last post
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (ImLeftFooted)</author>
		<pubDate>Tue, 10 Feb 2004 03:25:35 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Niunio: Nah, don&#39;t worry, keep the site up. I just misunderstood/overreacted.</p><p>Now, just wait for my entry... it&#39;ll blow you guys away! Blow you away in the sense that it will probably underwhelm you. But it has some nice gfx effects so far.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Goodbytes)</author>
		<pubDate>Tue, 10 Feb 2004 03:58:16 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>The question is, could a program be written that compresses code like this? It would add define, typedefs to reduce code.  Any varible created by the user code would have there names changed to something very short.  How big a program could this compressor compress?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Wetimer)</author>
		<pubDate>Tue, 10 Feb 2004 04:20:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
could a program be written that compresses code like this?
</p></div></div><p>
yeah, why not? Seems pretty easy to do. Just have it look for multiple occurances of a certain function call, try to define it, and if the define shrinks the program, keep it and then find another function to shrink. Change variables, use variables for long repeated values, and then cut out newlines and fit into 80 character lines. Simple enough.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Tue, 10 Feb 2004 04:27:27 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>That would be an interesting project.  What would also be interesting is to write a program that decompresses this code to a readable form as well...  (Although much easier to implement.)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Carrus85)</author>
		<pubDate>Tue, 10 Feb 2004 04:30:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Carrus: It&#39;s called indent, and it ships with linux (I believe).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Tue, 10 Feb 2004 04:40:32 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Actually the reverse is harder, because a program doesn&#39;t know what to rename the variables to! You&#39;d have to tell it what each variable should be renamed to, and then after that I think it&#39;s pretty easy sailing...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Tue, 10 Feb 2004 04:44:18 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>It&#39;s called indent, and it ships with linux (I believe).</p></div></div><p>
Does this program indent long ?: phrases? If not, the source can be still unreadable.</p><p>btw. I fixed small bug in my game which prevented it from compiling on some compilers - last post with code is updated.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Tue, 10 Feb 2004 04:51:06 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Wow, Krzysztof, your game is awesome.  I&#39;m completely flabbergasted that something of that complexity could be made in such a small amount of code. Great job! <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Breakman79)</author>
		<pubDate>Tue, 10 Feb 2004 04:54:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I updated my first post so that it has my latest code. I squeezed it even more by replacing two defines with functions. I got a goodly amount of room to maybe put another small feature in...but I&#39;m not sure what to put in?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Tue, 10 Feb 2004 06:03:29 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Wow... this was strangely amusing, in a very disturbing way. Anyways, here&#39;s my mini version of NiM.</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;/* MiniNiM 2004 - http://zaphire.ca */</span></td></tr><tr><td class="number">2</td><td><span class="p">#include &lt;math.h&gt;/*Damn you for taking up another line, math.h*/</span></td></tr><tr><td class="number">3</td><td><span class="k1">typedef</span> <span class="k1">int</span> i<span class="k2">;</span><span class="k1">typedef</span> <span class="k1">void</span> v<span class="k2">;</span><span class="k1">typedef</span> <span class="k1">float</span> f<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>l<span class="k2">;</span>f ox,oy<span class="k2">;</span><span class="k1">struct</span> W<span class="k2">;</span></td></tr><tr><td class="number">4</td><td><span class="k1">struct</span> B<span class="k2">{</span>f x,y,a<span class="k2">;</span>W <span class="k3">*</span>w<span class="k2">;</span>v ud<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>x<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="k3">*</span><span class="n">4</span><span class="k2">;</span>y<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="k3">*</span><span class="n">4</span><span class="k2">;</span><span class="k2">}</span>v re<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/circlefill" target="_blank"><span class="a">circlefill</span></a> <span class="k2">(</span>b,x,y,<span class="n">2</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>B bs<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">;</span><span class="k1">struct</span> W<span class="k2">{</span>W<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>o<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>h<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>r<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>a<span class="k3">=</span><span class="k3">-</span><span class="n">3</span>.<span class="n">14</span><span class="k2">;</span>m<span class="k3">=</span><span class="n">0</span></td></tr><tr><td class="number">6</td><td><span class="k2">;</span><span class="k2">}</span>i x,y,h,j,r,m,D,J,S,L,kr,u,T,o<span class="k2">;</span>f a<span class="k2">;</span>v dig<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>l,x<span class="k3">+</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>a<span class="k2">)</span><span class="k3">*</span><span class="n">2</span>,y-5<span class="k3">+</span></td></tr><tr><td class="number">7</td><td><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><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="k2">}</span><span class="k2">;</span>v sh<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>m<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>B b<span class="k2">;</span>b.x<span class="k3">=</span>x<span class="k2">;</span>b.y<span class="k3">=</span>y-5<span class="k2">;</span>b.a<span class="k3">=</span>a<span class="k2">;</span>b.w<span class="k3">=</span><span class="k1">this</span><span class="k2">;</span>bs<span class="k2">[</span>o<span class="k2">]</span><span class="k3">=</span>b<span class="k2">;</span>m<span class="k3">=</span><span class="n">20</span></td></tr><tr><td class="number">8</td><td><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>v ud<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>m--<span class="k2">;</span>ox<span class="k3">=</span>x<span class="k2">;</span>oy<span class="k3">=</span>y<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><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>T<span class="k2">]</span><span class="k2">)</span>dig<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>S<span class="k2">]</span><span class="k2">)</span>sh<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<span class="k3">+</span><span class="k3">=</span></td></tr><tr><td class="number">9</td><td>r?<span class="k3">-</span>.<span class="n">08</span><span class="k2">:</span>.<span class="n">08</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>D<span class="k2">]</span><span class="k2">)</span>a<span class="k3">+</span><span class="k3">=</span>r?.<span class="n">08</span><span class="k2">:</span><span class="k3">-</span>.<span class="n">08</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>J<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>j&gt;0<span class="k2">)</span><span class="k2">{</span>y-<span class="k3">=</span><span class="n">10</span><span class="k2">;</span>j--<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span></td></tr><tr><td class="number">10</td><td><span class="k1">else</span> <span class="k1">if</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><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><span class="k2">{</span>x--<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>r<span class="k2">)</span><span class="k2">{</span>a<span class="k3">=</span><span class="n">3</span>.<span class="n">14f</span><span class="k3">-</span>a<span class="k2">;</span><span class="k2">}</span>r<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>kr<span class="k2">]</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><span class="k3">!</span>r<span class="k2">)</span><span class="k2">{</span>a</td></tr><tr><td class="number">11</td><td><span class="k3">=</span><span class="n">3</span>.<span class="n">14</span><span class="k3">-</span>a<span class="k2">;</span><span class="k2">}</span>r<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><a href="http://www.allegro.cc/manual/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span>l,x,y<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>y--<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>y-oy<span class="k3">&lt;</span><span class="k3">-</span><span class="n">5</span><span class="k2">)</span><span class="k2">{</span>x<span class="k3">=</span>ox<span class="k2">;</span>y<span class="k3">=</span>oy<span class="k2">;</span><span class="k1">break</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>h&gt;</td></tr><tr><td class="number">12</td><td><span class="n">0</span><span class="k2">)</span><span class="k2">{</span><a href="http://www.allegro.cc/manual/ellipsefill" target="_blank"><span class="a">ellipsefill</span></a><span class="k2">(</span>b,x,y-4,<span class="n">8</span>,<span class="n">4</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,x-6<span class="k3">+</span><span class="k2">(</span><span class="n">12</span><span class="k3">*</span>r<span class="k2">)</span>,y-10,<span class="n">4</span>,<span class="n">2</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>b,x<span class="k3">+</span><span class="k2">(</span>r?<span class="n">5</span><span class="k2">:</span><span class="k3">-</span></td></tr><tr><td class="number">13</td><td><span class="n">5</span><span class="k2">)</span>,y-5,x<span class="k3">+</span><span class="k2">(</span>r?<span class="n">5</span><span class="k2">:</span><span class="k3">-</span><span class="n">5</span><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="k3">*</span><span class="n">10</span>,y-5<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><span class="n">10</span>,<span class="n">5</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>b,x-5,y-18,x-5<span class="k3">+</span>h,y-18,<span class="n">7</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span></td></tr><tr><td class="number">14</td><td><span class="k2">}</span><span class="k2">;</span>W z<span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">;</span>main<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>z<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.x<span class="k3">=</span><span class="n">100</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.y<span class="k3">=</span><span class="n">100</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.x<span class="k3">=</span><span class="n">200</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.y<span class="k3">=</span><span class="n">100</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.u<span class="k3">=</span><span class="n">84</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.L<span class="k3">=</span></td></tr><tr><td class="number">15</td><td><span class="n">82</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.D<span class="k3">=</span><span class="n">85</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.kr<span class="k3">=</span><span class="n">83</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.J<span class="k3">=</span><span class="n">108</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.S<span class="k3">=</span><span class="n">106</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.T<span class="k3">=</span><span class="n">104</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.u<span class="k3">=</span><span class="n">23</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.L<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">1</span></td></tr><tr><td class="number">16</td><td><span class="k2">]</span>.D<span class="k3">=</span><span class="n">19</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.kr<span class="k3">=</span><span class="n">4</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.J<span class="k3">=</span><span class="n">107</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.S<span class="k3">=</span><span class="n">105</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.T<span class="k3">=</span><span class="n">103</span><span class="k2">;</span>z<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.o<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></td></tr><tr><td class="number">17</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/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_AUTODETECT,<span class="n">320</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><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></td></tr><tr><td class="number">18</td><td>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span>l<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><a href="http://www.allegro.cc/manual/clear_to_color" target="_blank"><span class="a">clear_to_color</span></a><span class="k2">(</span>l,<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>i c<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/vsync" target="_blank"><span class="a">vsync</span></a><span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">19</td><td><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><a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>b,l,<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>c<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>c<span class="k3">&lt;</span><span class="n">2</span><span class="k2">;</span>c<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>z<span class="k2">[</span>c<span class="k2">]</span>.ud<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>c<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>c</td></tr><tr><td class="number">20</td><td><span class="k3">&lt;</span><span class="n">2</span><span class="k2">;</span>c<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>bs<span class="k2">[</span>c<span class="k2">]</span>.ud<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>bs<span class="k2">[</span>c<span class="k2">]</span>.re<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>i d<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>d<span class="k3">&lt;</span><span class="n">2</span><span class="k2">;</span>d<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/getpixel" target="_blank"><span class="a">getpixel</span></a><span class="k2">(</span>l,bs<span class="k2">[</span>c<span class="k2">]</span>.x,</td></tr><tr><td class="number">21</td><td>bs<span class="k2">[</span>c<span class="k2">]</span>.y<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><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>l,bs<span class="k2">[</span>c<span class="k2">]</span>.x,bs<span class="k2">[</span>c<span class="k2">]</span>.y,<span class="n">3</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>bs<span class="k2">[</span>c<span class="k2">]</span>.y<span class="k3">=</span><span class="k3">-</span><span class="n">100</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><a href="http://www.delorie.com/djgpp/doc/libc/libc_38.html" target="_blank">abs</a><span class="k2">(</span>bs<span class="k2">[</span>c<span class="k2">]</span></td></tr><tr><td class="number">22</td><td>.x-z<span class="k2">[</span>d<span class="k2">]</span>.x<span class="k2">)</span><span class="k3">&lt;</span><span class="n">10</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_38.html" target="_blank">abs</a><span class="k2">(</span>bs<span class="k2">[</span>c<span class="k2">]</span>.y-z<span class="k2">[</span>d<span class="k2">]</span>.y<span class="k2">)</span><span class="k3">&lt;</span><span class="n">10</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="k3">&amp;</span>z<span class="k2">[</span>d<span class="k2">]</span><span class="k3">!</span><span class="k3">=</span>bs<span class="k2">[</span>c<span class="k2">]</span>.w<span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>bs<span class="k2">[</span>c<span class="k2">]</span>.y<span class="k3">=</span><span class="k3">-</span><span class="n">100</span><span class="k2">;</span>bs<span class="k2">[</span>c<span class="k2">]</span>.</td></tr><tr><td class="number">23</td><td>a<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>z<span class="k2">[</span>d<span class="k2">]</span>.h--<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>z<span class="k2">[</span>d<span class="k2">]</span>.h<span class="k3">&lt;</span><span class="n">1</span><span class="k2">)</span><span class="k1">goto</span> E<span class="k2">;</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">320</span>,<span class="n">200</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>E:if<span class="k2">(</span>z<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.h&gt;</td></tr><tr><td class="number">24</td><td><span class="n">0</span><span class="k2">)</span>textout<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="s">"P1Win"</span>,<span class="n">140</span>,<span class="n">80</span>,<span class="n">4</span><span class="k2">)</span><span class="k2">;</span><span class="k1">else</span> textout<span class="k2">(</span>b,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>,<span class="s">"P2Win"</span>,<span class="n">140</span>,<span class="n">80</span>,<span class="n">4</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">25</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">320</span>,<span class="n">200</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><span class="k2">;</span></td></tr></tbody></table></div></div><p>

Player1<br />-------<br />Move - arrow keys<br />Dig - hold shift<br />Jump - alt<br />Shoot - control</p><p>Player2<br />-------<br />Move - ASDW<br />Dig - other shift<br />Jump - other alt<br />Shoot - other control</p><p> This was built with MSVC6, so I may be benefiting from M$&#39;s lack of compliance with ANSI standards in the scoping department.<br /> This hack has been quite bad for my coding practices. I tried to use OPP as much as possible, but it was better to use structs than classes because I didn&#39;t have to add &quot;public:&quot;, and using std::vectors took up way too much space.:&#39;( <br /> Well now that that&#39;s over, back to my precious OOP-oriented jobs. Thank goodness for hard drives larger than 2kb. ^^;;
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (zaphire)</author>
		<pubDate>Tue, 10 Feb 2004 16:46:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>What, you think making it a struct suddenly means it&#39;s not OO? You think a struct can not have polymorphism, static members, or anything a class can&#39;t? You&#39;re the second person to have done that in this thread. You people are weird.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Tue, 10 Feb 2004 18:16:03 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Structs in C++ are just wrappers to public classes; but it still feels gross to use them. The point I was making was that there just wasn&#39;t enough room for the OOP hierarchy I had in mind. (a base positional object, a particle class and a class for moving on a bitmap derived from that, derive Bullet and Worm classes from the movement class, derive Human and AI control classes from that etc) The lack of space forced me to use non-OOP solutions which I wouldn&#39;t have used otherwise. Yes, I could have derived to my heart&#39;s content, if there had been room to do so while still being able to implement the basic things that I wanted to have in there.</p><p> So yeah, it was fun coming up with the smallest solutions, rather than the fastest/easiest to develop.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (zaphire)</author>
		<pubDate>Tue, 10 Feb 2004 19:16:35 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I figured out I may not have time to continue my screenhack until next week. Well, the code&#39;s 26.2 lines now (about 25 if you don&#39;t count the damned first line <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" />), but I&#39;ll figure out eventually how to compress the code even further. And no, I won&#39;t strip out any graphics. <img src="http://www.allegro.cc/forums/smileys/wink.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; /*    -- TUNNEL B0.001 --     by "Fladimir da Gorf"      */</span></td></tr><tr><td class="number">2</td><td><span class="p">#define o(v,end)for(int v=0;v&lt;end;v++) /*  Arrow keys to move, space to fire  */</span></td></tr><tr><td class="number">3</td><td><span class="k1">typedef</span> <span class="k1">int</span> I<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>m,<span class="k3">*</span>pl<span class="k2">;</span>I hp,v,k,W<span class="k3">=</span><span class="n">320</span>,H<span class="k3">=</span><span class="n">200</span>,pc<span class="k3">=</span><span class="n">0x3C4AB4</span>,e<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,r<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,h<span class="k2">[</span><span class="n">99</span></td></tr><tr><td class="number">4</td><td><span class="k2">]</span>,n,l<span class="k3">=</span><span class="n">1</span>,Q<span class="k2">;</span><span class="k1">float</span> x,y,xs,ys,t<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,w<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,ts<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,ws<span class="k2">[</span><span class="n">99</span><span class="k2">]</span>,E,T,ES,TS,CT<span class="k2">;</span><span class="k1">void</span> D<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,</td></tr><tr><td class="number">5</td><td>I cx,I cy,I d<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>v<span class="k3">=</span><span class="k2">(</span>d<span class="k3">=</span><span class="k2">(</span><span class="k2">(</span>I<span class="k3">*</span><span class="k2">)</span>m-&gt;line<span class="k2">[</span>I<span class="k2">(</span>y<span class="k2">)</span><span class="k3">+</span>cy-100<span class="k2">]</span><span class="k2">)</span><span class="k2">[</span>I<span class="k2">(</span>x<span class="k2">)</span><span class="k3">+</span>cx-160<span class="k2">]</span><span class="k2">)</span>?d:0<span class="k2">;</span><span class="k1">else</span><span class="k2">(</span><span class="k2">(</span>I<span class="k3">*</span><span class="k2">)</span></td></tr><tr><td class="number">6</td><td>b-&gt;line<span class="k2">[</span>cy<span class="k2">]</span><span class="k2">)</span><span class="k2">[</span>cx<span class="k2">]</span><span class="k3">=</span>v<span class="k2">;</span><span class="k2">}</span>I L<span class="k2">(</span>I x,I y<span class="k2">)</span><span class="k2">{</span>v<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><a href="http://www.allegro.cc/manual/do_line" target="_blank"><span class="a">do_line</span></a><span class="k2">(</span>b,<span class="n">160</span>,<span class="n">100</span>,x,y,<span class="n">0</span>,D<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>I M<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>o<span class="k2">(</span>x,W<span class="k2">)</span><span class="k2">{</span>L<span class="k2">(</span></td></tr><tr><td class="number">7</td><td>x,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>L<span class="k2">(</span>x,<span class="n">199</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>o<span class="k2">(</span>y,H<span class="k2">)</span><span class="k2">{</span>L<span class="k2">(</span><span class="n">0</span>,y<span class="k2">)</span><span class="k2">;</span>L<span class="k2">(</span>W-1,y<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>I R<span class="k2">(</span>I x,I y,I r,I l<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>l<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>m,</td></tr><tr><td class="number">8</td><td>x,y,r,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>I a<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="n">1</span><span class="k2">:</span><span class="n">2</span><span class="k2">;</span>o<span class="k2">(</span>i,a<span class="k2">)</span>R<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>%<span class="k2">(</span><span class="n">2</span><span class="k3">*</span>r<span class="k2">)</span><span class="k3">-</span>r,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="k2">(</span><span class="n">2</span><span class="k3">*</span>r<span class="k2">)</span><span class="k3">-</span>r,<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></td></tr><tr><td class="number">9</td><td><span class="k2">)</span>%<span class="n">10</span><span class="k3">-</span><span class="n">5</span><span class="k2">)</span><span class="k3">&gt;</span>?<span class="n">10</span><span class="k3">&lt;</span>?<span class="n">40</span>,i?l<span class="k3">/</span><span class="n">2</span><span class="k2">:</span>l-1<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>I G<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span>o<span class="k2">(</span>y,m-&gt;h<span class="k2">)</span><span class="k2">{</span>o<span class="k2">(</span>x,m-&gt;w<span class="k2">)</span><span class="k2">{</span>I c<span class="k3">=</span><span class="k2">(</span><span class="n">2</span><span class="k3">*</span>x<span class="k3">+</span>y<span class="k2">)</span><span class="k3">&amp;</span><span class="n">127</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></td></tr><tr><td class="number">10</td><td>m,x,y,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span>c<span class="k3">+</span><span class="n">9</span>,c<span class="k3">+</span><span class="n">5</span>,c<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="n">500</span><span class="k2">;</span>y<span class="k3">=</span><span class="n">500</span><span class="k2">;</span>R<span class="k2">(</span>x,y,<span class="n">20</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">50</span>,<span class="n">2500</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>m,<span class="n">0</span>,<span class="n">0</span>,<span class="n">999</span>,</td></tr><tr><td class="number">11</td><td><span class="n">999</span>,<span class="n">0x1C1A17</span><span class="k2">)</span><span class="k2">;</span>o<span class="k2">(</span>u,<span class="n">3</span><span class="k3">*</span>l<span class="k2">)</span><span class="k1">while</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>m,e<span class="k3">&lt;</span>u&gt;,r<span class="k3">&lt;</span>u&gt;<span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>e<span class="k3">&lt;</span>u&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>%m-&gt;w<span class="k2">;</span>r<span class="k3">&lt;</span>u&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>%</td></tr><tr><td class="number">12</td><td>m-&gt;h<span class="k2">;</span>h<span class="k3">&lt;</span>u&gt;<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span>hp<span class="k3">=</span><span class="n">10</span><span class="k2">;</span><span class="k2">}</span><span class="k1">float</span> M<span class="k2">(</span>I a<span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> <a href="http://www.allegro.cc/manual/fixtof" target="_blank"><span class="a">fixtof</span></a><span class="k2">(</span>a<span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>I tr<span class="k3">=</span><span class="n">0x40000</span>,am<span class="k3">=</span><span class="n">0xFFFFFF</span><span class="k2">;</span>I F<span class="k2">(</span></td></tr><tr><td class="number">13</td><td><span class="k1">float</span> f<span class="k2">)</span><span class="k2">{</span>xs<span class="k3">+</span><span class="k3">=</span>f<span class="k3">*</span>M<span class="k2">(</span>fcos<span class="k2">(</span>k<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>ys<span class="k3">+</span><span class="k3">=</span>f<span class="k3">*</span>M<span class="k2">(</span>fsin<span class="k2">(</span>k<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>I 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></td></tr><tr><td class="number">14</td><td><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><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">0</span>,W,H,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>b<span class="k3">=</span>create_bitm\</td></tr><tr><td class="number">15</td><td>ap<span class="k2">(</span>W,H<span class="k2">)</span><span class="k2">;</span>m<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">999</span>,<span class="n">999</span><span class="k2">)</span><span class="k2">;</span>pl<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">14</span>,<span class="n">10</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>pl,<span class="n">0xFF</span>\</td></tr><tr><td class="number">16</td><td><span class="n">00FF</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>pl,<span class="n">0</span>,<span class="n">0</span>,<span class="n">14</span>,<span class="n">5</span>,<span class="n">0</span>,<span class="n">10</span>,pc<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><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">0x201B</span>\</td></tr><tr><td class="number">17</td><td><span class="n">15</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>F<span class="k2">(</span>.<span class="n">4</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>F<span class="k2">(</span><span class="k3">-</span>.<span class="n">25</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>k<span class="k3">=</span><span class="k2">(</span>k-tr<span class="k2">)</span><span class="k3">&amp;</span>am<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>k<span class="k3">=</span><span class="k2">(</span>k<span class="k3">+</span></td></tr><tr><td class="number">18</td><td>tr<span class="k2">)</span><span class="k3">&amp;</span>am<span class="k2">;</span>x<span class="k3">+</span><span class="k3">=</span>xs<span class="k2">;</span>y<span class="k3">+</span><span class="k3">=</span>ys<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>m,x,y<span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>x-<span class="k3">=</span>xs<span class="k2">;</span>y-<span class="k3">=</span>ys<span class="k2">;</span>xs<span class="k3">=</span>ys<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>n<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>o<span class="k2">(</span>u,<span class="n">99</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>h<span class="k3">&lt;</span>u&gt;<span class="k2">)</span></td></tr><tr><td class="number">19</td><td><span class="k2">{</span>n<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">float</span> N<span class="k3">=</span>x-e<span class="k3">&lt;</span>u&gt;,M<span class="k3">=</span>y-r<span class="k3">&lt;</span>u&gt;,L<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_738.html" target="_blank">sqrt</a><span class="k2">(</span>N<span class="k3">*</span>N<span class="k3">+</span>M<span class="k3">*</span>M<span class="k2">)</span><span class="k3">/</span><span class="n">5</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k2">(</span>Q%<span class="k2">(</span><span class="n">9</span><span class="k3">*</span><span class="k2">(</span>u<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>t<span class="k3">&lt;</span>u&gt;<span class="k3">=</span>e<span class="k3">&lt;</span>u&gt;<span class="k2">;</span>w<span class="k3">&lt;</span>u&gt;</td></tr><tr><td class="number">20</td><td><span class="k3">=</span>r<span class="k3">&lt;</span>u&gt;<span class="k2">;</span>ts<span class="k3">&lt;</span>u&gt;<span class="k3">=</span>N<span class="k3">/</span>L<span class="k2">;</span>ws<span class="k3">&lt;</span>u&gt;<span class="k3">=</span>M<span class="k3">/</span>L<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>u&gt;-x<span class="k3">+</span><span class="n">160</span>,r<span class="k3">&lt;</span>u&gt;-y<span class="k3">+</span><span class="n">100</span>,<span class="n">9</span>,<span class="n">0xA24D1A</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>t<span class="k2">[</span>u</td></tr><tr><td class="number">21</td><td><span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>t<span class="k3">&lt;</span>u&gt;<span class="k3">+</span><span class="k3">=</span>ts<span class="k3">&lt;</span>u&gt;<span class="k2">;</span>w<span class="k3">&lt;</span>u&gt;<span class="k3">+</span><span class="k3">=</span>ws<span class="k3">&lt;</span>u&gt;<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>m,t<span class="k3">&lt;</span>u&gt;,w<span class="k3">&lt;</span>u&gt;<span class="k2">)</span><span class="k2">)</span>t<span class="k3">&lt;</span>u&gt;<span class="k3">=</span><span class="n">0</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,t<span class="k3">&lt;</span>u&gt;-x<span class="k3">+</span><span class="n">160</span>,w</td></tr><tr><td class="number">22</td><td><span class="k3">&lt;</span>u&gt;-y<span class="k3">+</span><span class="n">100</span>,<span class="n">2</span>,<span class="n">0xFDFDDA</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k2">}</span>Q<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>n<span class="k2">)</span><span class="k2">{</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>G<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>M<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><span class="k3">-</span>CT&gt;0<span class="k2">)</span><span class="k2">{</span>E<span class="k3">+</span><span class="k3">=</span>ES<span class="k2">;</span>T<span class="k3">+</span><span class="k3">=</span>TS<span class="k2">;</span>o<span class="k2">(</span>u,<span class="n">99</span><span class="k2">)</span></td></tr><tr><td class="number">23</td><td><span class="k1">if</span><span class="k2">(</span>h<span class="k3">&lt;</span>u&gt;<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>E-e<span class="k3">&lt;</span>u&gt;<span class="k2">)</span><span class="k3">*</span><span class="k2">(</span>E-e<span class="k3">&lt;</span>u&gt;<span class="k2">)</span><span class="k3">+</span><span class="k2">(</span>T-r<span class="k3">&lt;</span>u&gt;<span class="k2">)</span><span class="k3">*</span><span class="k2">(</span>T-r<span class="k3">&lt;</span>u&gt;<span class="k2">)</span><span class="k3">&lt;</span><span class="n">85</span><span class="k2">)</span><span class="k2">{</span>CT<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k3">-</span><span class="k3">-</span>h<span class="k3">&lt;</span>u&gt;<span class="k2">;</span><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>m,E,T<span class="k2">)</span></td></tr><tr><td class="number">24</td><td><span class="k2">)</span>CT<span class="k3">=</span><span class="n">0</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,E-x<span class="k3">+</span><span class="n">160</span>,T-y<span class="k3">+</span><span class="n">100</span>,<span class="n">2</span>,<span class="n">0x000000</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><span class="k2">{</span>E<span class="k3">=</span>x<span class="k2">;</span>T<span class="k3">=</span>y<span class="k2">;</span>ES<span class="k3">=</span>M<span class="k2">(</span>fcos<span class="k2">(</span>k</td></tr><tr><td class="number">25</td><td><span class="k2">)</span><span class="k2">)</span><span class="k3">*</span><span class="n">9</span><span class="k2">;</span>TS<span class="k3">=</span>M<span class="k2">(</span>fsin<span class="k2">(</span>k<span class="k2">)</span><span class="k2">)</span><span class="k3">*</span><span class="n">9</span><span class="k2">;</span>CT<span class="k3">=</span><span class="n">30</span><span class="k2">;</span><span class="k2">}</span>Q<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>b,pl,<span class="n">153</span>,<span class="n">95</span>,k<span class="k2">)</span><span class="k2">;</span>o<span class="k2">(</span>u,<span class="n">99</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/getpixel" target="_blank"><span class="a">getpixel</span></a></td></tr><tr><td class="number">26</td><td><span class="k2">(</span>b,t<span class="k3">&lt;</span>u&gt;-x<span class="k3">+</span><span class="n">160</span>,w<span class="k3">&lt;</span>u&gt;-y<span class="k3">+</span><span class="n">99</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span>pc<span class="k2">)</span><span class="k2">{</span>t<span class="k3">&lt;</span>u&gt;<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><span class="k3">-</span>hp<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><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">27</td><td><span class="n">320</span>,<span class="n">200</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>

Gameplay:<br />Use left and right arrows to turn, up arrow to accelete, down arrow for inverse acceleration. Use space to fire the orange circular turrets. Dodge the turret fire, you&#39;ll resist only 10 of their bullets. You&#39;ll advance to a new level after all turrets are destroyed.</p><p>Hints:<br />The ship will accelerate quite fast, so don&#39;t press up for too long at once. Flying circles around the enemy turrets may help to dodge their fire. Never stay still! <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /></p><p>Issues:<br />There&#39;s no way to know how much hull you have left or what level you&#39;re playing. The game just quits if you die. The game may run too fast in high-end PCs (if that&#39;s an issue, just add a rest(something) -function before the second last &#39;}&#39;-character). And sometimes the game may just crash. Hopefully it doesn&#39;t happen too often. There are some minor graphical issues that can&#39;t be fixed, as that adds extra code. You may pass through the wall if you fly far too fast, and if you happen to fly out of the map this way, it&#39;s crash &#39;n&#39; burn. The speed of the enemy bullets seems to increase if you fly too far from the enemies.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Fladimir da Gorf)</author>
		<pubDate>Wed, 11 Feb 2004 02:46:38 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
What, you think making it a struct suddenly means it&#39;s not OO? You think a struct can not have polymorphism, static members, or anything a class can&#39;t? 
</p></div></div><p>

Private and protected members? Perhaps?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Chris Katko)</author>
		<pubDate>Wed, 11 Feb 2004 04:02:07 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Etwinox: In C++ they a struct is allowed to have private and protected members.  It just defaults to public.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Wed, 11 Feb 2004 04:14:25 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>zaphire: Man, is it just me, or have you not posted here in like... either forever or a really long time? Keep up the Canadian gamedev bit! <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>Here&#39;s another &quot;looks like the compo is progressing nicely&quot; bit. I suppose I&#39;ll have to eventually draw the line somewhere...</p><p>So let&#39;s say that the deadline for a completed entry is Monday, February 16 2004. I realize that with time zones, that&#39;s a bit nonspecific, so... just try to have your entries in by around then, because that&#39;s probably about when we&#39;ll start the judging process. If you delay it past that time, you might run into some problems wherein I&#39;ll already have made the archive and can&#39;t be arsed to add your entry to it. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>Fladimir: but maybe I&#39;ll give you some extra time if you need it. (unable to finish until next week you said?)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Goodbytes)</author>
		<pubDate>Wed, 11 Feb 2004 05:09:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p> No... I haven&#39;t posted here in ages...<br /> ...but believe, me I&#39;ve been very busy with the Canadian gamedev bit; more specifically the Winnipeg gamedev bit! I&#39;m currently working for three Winnipeg gamedev start-up companies, one of them being my own. <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /> Check out my site below for more info.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (zaphire)</author>
		<pubDate>Wed, 11 Feb 2004 09:29:03 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I like that.. Extream Curling. Deffinitly a Canadian company <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Thomas Fjellstrom)</author>
		<pubDate>Wed, 11 Feb 2004 09:40:13 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>
zaphire: Sweet. We&#39;ll get Josh Bolduc back and make Winnipeg the next Silicon Valley. <img src="http://www.allegro.cc/forums/smileys/cool.gif" alt="8-)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (23yrold3yrold)</author>
		<pubDate>Wed, 11 Feb 2004 10:49:25 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I'm dumb!... <br /> It was funny, I was talking to one of my girlfriend&#39;s friends... he was trying to convince me to move all operations to Vancouver. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /> I was like.. No! There&#39;s something about being able to develop in an environment in which you can freeze to death on any given day that just makes it magical.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (zaphire)</author>
		<pubDate>Wed, 11 Feb 2004 11:35:02 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Goodbytes said:</div><div class="quote"><p>Fladimir: but maybe I&#39;ll give you some extra time if you need it. (unable to finish until next week you said?) </p></div></div><p>
Yeah, that&#39;s true... <img src="http://www.allegro.cc/forums/smileys/sad.gif" alt=":(" /> I&#39;m busy during the week and away most of the weekend. How about the next Wednesday?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Fladimir da Gorf)</author>
		<pubDate>Wed, 11 Feb 2004 12:42:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hi all, nice entries here!</p><p>I finally found the time and finished my own one... Here it is:</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;//Monospace Shooter 80x25 lines, in memory of Milo Sedlacek</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="n">5</span><span class="k2">]</span>,<span class="k3">*</span>r<span class="k2">;</span><span class="k1">int</span> i,j,x,y,L,p,f,<span class="k3">*</span>l,W<span class="k3">=</span><span class="n">320</span>,H<span class="k3">=</span><span class="n">200</span><span class="k2">;</span><span class="k1">volatile</span> <span class="k1">int</span> t<span class="k2">;</span><span class="k1">int</span> D<span class="k2">[</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">10</span>,<span class="n">648</span></td></tr><tr><td class="number">3</td><td>,<span class="n">15</span>,<span class="n">657</span>,<span class="n">26</span>,<span class="n">717</span>,<span class="n">35</span>,<span class="n">165</span>,<span class="n">36</span>,<span class="n">322</span>,<span class="k3">-</span><span class="n">1021313012</span>,<span class="k3">-</span><span class="n">2122071033</span>,<span class="n">1597440</span>,<span class="n">25149544</span>,<span class="n">67100736</span>,</td></tr><tr><td class="number">4</td><td><span class="n">8192</span>,<span class="n">103284803</span>,<span class="k3">-</span><span class="n">1032834184</span>,<span class="k3">-</span><span class="n">2121207582</span>,<span class="n">1644691152</span>,<span class="n">133308448</span>,<span class="k3">-</span><span class="n">288325278</span>,<span class="k3">-</span><span class="n">103281</span>\</td></tr><tr><td class="number">5</td><td><span class="n">0256</span>,<span class="n">3373058</span>,<span class="n">1124075048</span>,<span class="n">8192</span>,<span class="n">3145728</span>,<span class="n">871893760</span>,<span class="n">272880001</span>,<span class="n">360844072</span>,<span class="n">1217207235</span>,\</td></tr><tr><td class="number">6</td><td><span class="k3">-</span><span class="n">1444069639</span>,<span class="n">805047120</span>,<span class="n">7356545</span>,<span class="n">8384526</span>,<span class="n">22511061</span>,<span class="n">955345</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><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>\</td></tr><tr><td class="number">7</td><td><span class="k1">int</span><span class="k3">*</span>g,<span class="k1">int</span> s<span class="k2">)</span><span class="k2">{</span><span class="k1">int</span> b<span class="k3">=</span><span class="n">0</span>,z<span class="k3">=</span>s<span class="k3">&amp;</span><span class="n">31</span><span class="k2">;</span>s&gt;&gt;<span class="k3">=</span><span class="n">5</span><span class="k2">;</span>r<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,z<span class="k2">)</span><span class="k2">;</span>z<span class="k3">*</span><span class="k3">=</span>s<span class="k2">;</span><span class="k1">char</span><span class="k3">*</span>d<span class="k3">=</span>r-&gt;dat<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k2">;</span></td></tr><tr><td class="number">8</td><td>z<span class="k2">;</span>z--,d<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>g<span class="k3">&amp;</span><span class="k2">(</span><span class="n">1</span><span class="k3">&lt;</span><span class="k3">&lt;</span>b<span class="k2">)</span><span class="k2">)</span><span class="k3">*</span>d<span class="k3">=</span><span class="n">11</span><span class="k2">;</span><span class="k1">else</span><span class="k3">*</span>d<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>b&gt;31<span class="k2">)</span><span class="k2">{</span>b<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>g<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">return</span> r<span class="k2">;</span><span class="k2">}</span><span class="k1">void</span> main</td></tr><tr><td class="number">9</td><td><span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">struct</span><span class="k2">{</span><span class="k1">int</span> t<span class="k2">;</span><span class="k1">float</span> x,y,vx,h<span class="k2">;</span><span class="k2">}</span>e<span class="k2">[</span>W<span class="k2">]</span>,<span class="k3">*</span>m<span class="k3">=</span>e<span class="k3">+</span><span class="n">100</span>,<span class="k3">*</span>o<span class="k3">=</span>e<span class="k3">+</span>H,<span class="k3">*</span>C,<span class="k3">*</span>M,<span class="k3">*</span>X,N<span class="k3">=</span><span class="k2">{</span><span class="n">0</span>,<span class="k2">}</span><span class="k2">;</span>allegro_i\</td></tr><tr><td class="number">10</td><td>nit<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>T,<span class="n">15</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">0</span>,W,H,<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>,l<span class="k3">=</span>D<span class="k2">;</span></td></tr><tr><td class="number">11</td><td>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>b<span class="k3">&lt;</span>i&gt;<span class="k3">=</span>G<span class="k2">(</span>D<span class="k3">+</span><span class="k3">*</span>l<span class="k3">+</span><span class="k3">+</span>,<span class="k3">*</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">;</span>l<span class="k3">=</span>D<span class="k2">;</span>r<span class="k3">=</span><a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span>W,H<span class="k2">)</span><span class="k2">;</span>t<span class="k3">=</span>x<span class="k3">=</span>f<span class="k3">=</span>p<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>y<span class="k3">=</span>L<span class="k3">=</span><span class="n">96</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>e,</td></tr><tr><td class="number">12</td><td><span class="n">0</span>,<span class="k1">sizeof</span><span class="k2">(</span>N<span class="k2">)</span><span class="k3">*</span>W<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k2">;</span><span class="k2">;</span><span class="k2">)</span><span class="k2">{</span>clear<span class="k2">(</span>r<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">99</span>,C<span class="k3">=</span>o,M<span class="k3">=</span>m<span class="k2">;</span>i<span class="k2">;</span>i--,C<span class="k3">+</span><span class="k3">+</span>,M<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>C-&gt;t<span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span><span class="k2">(</span>ra\</td></tr><tr><td class="number">13</td><td>nd<span class="k2">(</span><span class="k2">)</span>%<span class="n">50</span><span class="k2">)</span><span class="k2">)</span><span class="k2">{</span>C-&gt;t<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>C-&gt;x<span class="k3">=</span>W<span class="k2">;</span>C-&gt;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<span class="k2">;</span>C-&gt;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">9</span><span class="k2">)</span><span class="k3">/</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="k1">if</span><span class="k2">(</span>C-&gt;t<span class="k3">=</span><span class="k3">=</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span>putp\</td></tr><tr><td class="number">14</td><td>ixel<span class="k2">(</span>r,C-&gt;x,C-&gt;y,<span class="n">11</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C-&gt;x<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k3">*</span>C<span class="k3">=</span>N<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>C-&gt;t<span class="k3">&amp;</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>r,C-&gt;x<span class="k3">+</span><span class="n">5</span>,C-&gt;y<span class="k3">+</span><span class="n">5</span>,MIN<span class="k2">(</span></td></tr><tr><td class="number">15</td><td>C-&gt;h,<span class="n">15</span><span class="k2">)</span>,<span class="n">11</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C-&gt;h&gt;15<span class="k2">)</span><a href="http://www.allegro.cc/manual/circlefill" target="_blank"><span class="a">circlefill</span></a><span class="k2">(</span>r,C-&gt;x<span class="k3">+</span><span class="n">5</span>,C-&gt;y<span class="k3">+</span><span class="n">5</span>,C-&gt;h-15,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span>C-&gt;h<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C-&gt;h&gt;30</td></tr><tr><td class="number">16</td><td><span class="k2">)</span><span class="k3">*</span>C<span class="k3">=</span>N<span class="k2">;</span><span class="k2">}</span>C-&gt;x<span class="k3">+</span><span class="k3">=</span>C-&gt;vx<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>M-&gt;t<span class="k3">=</span><span class="k3">=</span><span class="n">0</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">75</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>f<span class="k2">)</span><span class="k2">{</span>f<span class="k3">=</span><span class="n">15</span><span class="k2">;</span><span class="k3">*</span>M<span class="k3">=</span>N<span class="k2">;</span>M-&gt;t<span class="k3">=</span><span class="n">1</span><span class="k2">;</span>M-&gt;x<span class="k3">=</span>x<span class="k3">+</span><span class="n">20</span><span class="k2">;</span>M-&gt;y<span class="k3">=</span>y<span class="k3">+</span><span class="n">3</span></td></tr><tr><td class="number">17</td><td><span class="k2">;</span>M-&gt;vx<span class="k3">=</span><span class="n">3</span><span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>M-&gt;t<span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span>M-&gt;x&gt;W<span class="k2">)</span>M-&gt;t<span class="k3">=</span><span class="n">0</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>r,b<span class="k2">[</span><span class="n">4</span><span class="k2">]</span>,M-&gt;x,M-&gt;y<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">99</span>,X<span class="k3">=</span>e<span class="k2">;</span></td></tr><tr><td class="number">18</td><td>j<span class="k2">;</span>j--,X<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;t<span class="k3">&amp;</span><span class="k3">&amp;</span>M-&gt;x<span class="k3">+</span><span class="n">9</span><span class="k3">&gt;</span>X-&gt;x<span class="k3">&amp;</span><span class="k3">&amp;</span>M-&gt;x<span class="k3">&lt;</span>X-&gt;x<span class="k3">+</span><span class="n">21</span><span class="k3">&amp;</span><span class="k3">&amp;</span>M-&gt;y<span class="k3">+</span><span class="n">2</span><span class="k3">&gt;</span>X-&gt;y<span class="k3">&amp;</span><span class="k3">&amp;</span>M-&gt;y<span class="k3">&lt;</span>X-&gt;y<span class="k3">+</span><span class="n">15</span><span class="k2">)</span><span class="k2">{</span>X-&gt;t<span class="k3">=</span></td></tr><tr><td class="number">19</td><td><span class="n">2</span><span class="k2">;</span>X-&gt;h<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k3">*</span><span class="k2">(</span>X<span class="k3">+</span>H<span class="k2">)</span><span class="k3">=</span><span class="k3">*</span>X<span class="k2">;</span><span class="k3">*</span>M<span class="k3">=</span><span class="k3">*</span>X<span class="k3">=</span>N<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>M-&gt;x<span class="k3">+</span><span class="k3">=</span>M-&gt;vx<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">99</span>,C<span class="k3">=</span>e<span class="k2">;</span>i<span class="k2">;</span>i--,C<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-&gt;</td></tr><tr><td class="number">20</td><td>t<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>r,b<span class="k2">[</span>C-&gt;t<span class="k2">]</span>,C-&gt;x,C-&gt;y<span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C-&gt;t<span class="k3">=</span><span class="k3">=</span><span class="n">2</span><span class="k2">)</span>C-&gt;y<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>C-&gt;h<span class="k2">)</span><span class="k2">;</span>C-&gt;h<span class="k3">+</span><span class="k3">=</span>.<span class="n">03</span><span class="k2">;</span>C-&gt;x<span class="k3">+</span><span class="k3">=</span>C</td></tr><tr><td class="number">21</td><td><span class="k3">-</span><span class="k3">&gt;</span>vx<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C-&gt;x<span class="k3">&lt;</span><span class="k3">-</span><span class="n">20</span><span class="k2">)</span><span class="k3">*</span>C<span class="k3">=</span>N<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>r,<span class="k3">*</span>b,x,y<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>r,<a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,W,H<span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span><span class="k3">!</span></td></tr><tr><td class="number">22</td><td>t<span class="k2">)</span><span class="k2">;</span>t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>L--<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><span class="k3">*</span>l<span class="k2">;</span>C<span class="k3">=</span>e<span class="k3">+</span>p<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>,L<span class="k3">/</span><span class="k3">=</span><span class="n">4</span>,C<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k3">*</span>C<span class="k3">=</span>N<span class="k2">;</span>C-&gt;t<span class="k3">=</span>L<span class="k3">&amp;</span><span class="n">3</span><span class="k2">;</span>C-&gt;x<span class="k3">=</span>W<span class="k3">+</span><span class="k2">(</span>i</td></tr><tr><td class="number">23</td><td>%<span class="n">4</span><span class="k2">)</span><span class="k3">*</span><span class="n">24</span><span class="k2">;</span>C-&gt;y<span class="k3">=</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">50</span><span class="k3">+</span>C-&gt;t<span class="k3">*</span><span class="n">25</span><span class="k2">)</span>%<span class="n">200</span><span class="k2">;</span>C-&gt;vx<span class="k3">=</span><span class="k3">-</span><span class="n">2</span>.<span class="k3">/</span>C-&gt;t<span class="k2">;</span>C-&gt;h<span class="k3">=</span>p<span class="k2">;</span>p<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>p&gt;99<span class="k2">)</span>p<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>L<span class="k3">=</span><span class="n">96</span><span class="k2">;</span></td></tr><tr><td class="number">24</td><td>l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>l&gt;D<span class="k3">+</span><span class="n">36</span><span class="k2">)</span>l<span class="k3">=</span>D<span class="k2">;</span><span class="k2">}</span><span class="k1">if</span><span class="k2">(</span>f&gt;0<span class="k2">)</span>f--<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="k3">&amp;</span><span class="k3">&amp;</span>x&gt;0<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">83</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>x<span class="k3">&lt;</span><span class="n">300</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></td></tr><tr><td class="number">25</td><td><span class="n">84</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>y&gt;0<span class="k2">)</span>y--<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="k3">&amp;</span><span class="k3">&amp;</span>y<span class="k3">&lt;</span><span class="n">192</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><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">break</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">// Finished!</span></td></tr></tbody></table></div></div><p>

Yes, it&#39;s a (very) stripped down version of the old Monospace Shooter (for those who don&#39;t know it, it&#39;s a QB game by Milo Sedlacek, who passed away some years ago).</p><p>Arrow keys to move, space to fire, ESC to exit.<br />It features three enemies, but none of them fires at you... Not enough space to handle enemy fire. Also not enough space to handle more complex enemy movements, nor enemy/player collisions... But you get 5 hardcoded sprites, scrolling starfield, multiple player bullets, explosions, static level data that repeats forever and fun!</p><p>Feedback is welcome!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (lillo)</author>
		<pubDate>Wed, 11 Feb 2004 23:41:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>There&#39;s something about being able to develop in an environment in which you can freeze to death on any given day that just makes it magical.</p></div></div><p>&quot;Magical&quot; ... that&#39;s not exactly the word that went through my mind when I woke up to -54C 2 weeks ago <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /></p><p>Mind you, I imagine my Win98 box freezes in any given environment anyway <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (23yrold3yrold)</author>
		<pubDate>Thu, 12 Feb 2004 06:01:56 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>&quot;Magical&quot; ... that&#39;s not exactly the word that went through my mind when I woke up to -54C 2 weeks ago</p></div></div><p>And I thought the -38c we got a couple weeks ago was bad... Sure with windchill it was -50c... The entire week it was -50c with windchill.. Damn cold <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Thomas Fjellstrom)</author>
		<pubDate>Thu, 12 Feb 2004 06:12:27 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>
Yeah, that -54C is with the windchill. Before then, I&#39;d never seen it go past -44C in Winnipeg. Then it hit -48C, then -50C (couldn&#39;t believe it; halfway to double digits), then -54C (#@&amp;%!!) ... oy.</p><p>Anyway, enough OT <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /> ...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (23yrold3yrold)</author>
		<pubDate>Thu, 12 Feb 2004 06:27:03 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p> Winnipeggers are just bred tougher because of the harsh conditions; henceforth we can survive through equally harsh crunch times.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (zaphire)</author>
		<pubDate>Thu, 12 Feb 2004 07:08:37 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>This was written for 20 semi&#039;s or less, so it doesn&#039;t fit in 25 lines. (Only 16 semi&#039;s, and no cheating using commas to execute multiple functions...)</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number">  1</span><span class="p">#include &lt;allegro.h&gt;</span>
<span class="number">  2</span><span class="p">#define B(x,y) b-&gt;line[x][y]</span>
<span class="number">  3</span><span class="p">#define P (B(22,7))</span>
<span class="number">  4</span><span class="p">#define R (B(22,8))</span>
<span class="number">  5</span><span class="k1">int</span> p<span class="k2">[</span><span class="n">7</span><span class="k2">]</span><span class="k2">[</span><span class="n">4</span><span class="k2">]</span><span class="k2">[</span><span class="n">4</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="k2">{</span><span class="k2">{</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">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</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="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</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="k2">}</span>,<span class="k2">{</span>
<span class="number">  6</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</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="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</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><span class="k2">{</span><span class="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">2</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">3</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="k2">}</span>,<span class="k2">{</span>
<span class="number">  7</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">2</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">3</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="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">2</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">3</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="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">2</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</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="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span>
<span class="number">  8</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">2</span>,<span class="n">1</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="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">2</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="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">2</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span><span class="k2">}</span>,<span class="k2">{</span><span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,
<span class="number">  9</span><span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">2</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="n">2</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">2</span>,<span class="n">1</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="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">2</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">2</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="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,
<span class="number"> 10</span><span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">2</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</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="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">2</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="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">2</span>,<span class="n">1</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="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,
<span class="number"> 11</span><span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">2</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="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">2</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">2</span>,<span class="n">1</span><span class="k2">}</span><span class="k2">}</span>,<span class="k2">{</span><span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">2</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">2</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="n">0</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,
<span class="number"> 12</span><span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">2</span>,<span class="n">1</span><span class="k2">}</span><span class="k2">}</span>,<span class="k2">{</span><span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">2</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="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">2</span>,<span class="n">1</span><span class="k2">}</span><span class="k2">}</span>,<span class="k2">{</span><span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>
<span class="number"> 13</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">2</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="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">2</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</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="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">2</span><span class="k2">}</span><span class="k2">}</span>,<span class="k2">{</span><span class="k2">{</span><span class="n">1</span>,<span class="n">0</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">2</span>,<span class="n">0</span><span class="k2">}</span>
<span class="number"> 14</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</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="k2">}</span>,<span class="k2">{</span><span class="n">0</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">1</span><span class="k2">}</span>,<span class="k2">{</span><span class="n">1</span>,<span class="n">2</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> main<span class="k2">(</span><span class="k1">void</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">if</span><span class="k2">(</span>
<span class="number"> 15</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="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,<span class="n">192</span>,<span class="n">352</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k3">&lt;</span><span class="n">0</span>?<span class="n">1</span><span class="k2">:</span>
<span class="number"> 16</span><a href="http://www.allegro.cc/manual/install_timer" target="_blank"><span class="a">install_timer</span></a><span class="k2">(</span><span class="k2">)</span><span class="k3">&lt;</span><span class="n">0</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="k3">&lt;</span><span class="n">0</span>?<span class="n">1</span><span class="k2">:</span><span class="k3">!</span><span class="k2">(</span>b<span class="k3">=</span><a href="http://www.allegro.cc/manual/create_bitmap_ex" target="_blank"><span class="a">create_bitmap_ex</span></a><span class="k2">(</span><span class="n">8</span>,<a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a>,
<span class="number"> 17</span><a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a><span class="k3">+</span><span class="n">50</span><span class="k2">)</span><span class="k2">)</span>?<span class="n">1</span><span class="k2">:</span><span class="n">0</span><span class="k2">)</span><span class="k1">return</span> <span class="n">1</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/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>b,<span class="n">0</span>,<span class="n">0</span>,<span class="n">11</span>,<span class="n">21</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">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">22</span>,<span class="n">8</span><span class="k2">)</span><span class="k3">=</span><span class="k2">(</span>
<span class="number"> 18</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">7</span><span class="k2">)</span><span class="k3">=</span><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="k3">+</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">=</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</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="k3">+</span><span class="n">4</span><span class="k2">)</span><span class="k2">)</span>%<span class="n">7</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>KEY_ESC<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">0</span><span class="k2">)</span><span class="k3">=</span><span class="k3">=</span>
<span class="number"> 19</span><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/retrace_count" target="_blank"><span class="a">retrace_count</span></a><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span><span class="k3">=</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a><span class="k2">[</span>KEY_LEFT<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">4</span><span class="k2">)</span>%<span class="n">4</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span><span class="k2">(</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p
<span class="number"> 20</span><span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><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><span class="k3">-</span><span class="n">1</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>
<span class="number"> 21</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><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">2</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><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,
<span class="number"> 22</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">3</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><span class="k2">)</span>?<span class="k3">-</span><span class="n">1</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><span class="k3">!</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">4</span><span class="k2">)</span>%<span class="n">4</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span><span class="k2">(</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">0</span>
<span class="number"> 23</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><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><span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><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><span class="k3">+</span>B
<span class="number"> 24</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">2</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><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>
<span class="number"> 25</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">3</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><span class="k2">)</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="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</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><span class="k3">!</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">4</span><span class="k2">)</span><span class="k3">+</span><span class="k3">+</span>%<span class="n">32</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>KEY_DOWN<span class="k2">]</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span><span class="k2">(</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span>
<span class="number"> 26</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">1</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><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><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">1</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>
<span class="number"> 27</span>R<span class="k2">]</span><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="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">1</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">[</span>
<span class="number"> 28</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">1</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k2">)</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="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span><span class="n">1</span><span class="k3">+</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">8</span><span class="k2">)</span><span class="k3">=</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">8</span><span class="k2">)</span><span class="k3">+</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>KEY_UP<span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">4</span>
<span class="number"> 29</span><span class="k2">)</span>%<span class="n">4</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span><span class="k2">(</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">8</span><span class="k2">)</span><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><span class="n">0</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">1</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">8</span><span class="k2">)</span><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><span class="n">0</span><span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span>
<span class="number"> 30</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">8</span><span class="k2">)</span><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><span class="n">1</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">1</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">8</span><span class="k2">)</span><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><span class="n">1</span><span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>
<span class="number"> 31</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">8</span><span class="k2">)</span><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><span class="n">2</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">1</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">8</span><span class="k2">)</span><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><span class="n">2</span><span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P
<span class="number"> 32</span><span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">8</span><span class="k2">)</span><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><span class="n">3</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">1</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">8</span><span class="k2">)</span><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><span class="n">3</span><span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k2">)</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>%<span class="n">4</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="k3">!</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>
<span class="number"> 33</span>,<span class="n">4</span><span class="k2">)</span>%<span class="n">32</span><span class="k2">)</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k2">(</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">1</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><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><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">[</span>
<span class="number"> 34</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">1</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><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="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">1</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B
<span class="number"> 35</span><span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k3">+</span><span class="n">1</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><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="k2">)</span><span class="k2">{</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">3</span><span class="k2">)</span><span class="k3">=</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>
<span class="number"> 36</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><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><span class="k2">)</span><span class="k3">=</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><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="k2">)</span><span class="k3">=</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span>
<span class="number"> 37</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k3">=</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span>
<span class="number"> 38</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span><span class="k3">+</span><span class="k3">+</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">3</span><span class="k2">)</span><span class="k3">&lt;</span><span class="n">21</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">3</span><span class="k2">)</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">3</span><span class="k2">)</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">3</span><span class="k2">)</span>,<span class="n">3</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">3</span><span class="k2">)</span>,<span class="n">4</span><span class="k2">)</span>
<span class="number"> 39</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">3</span><span class="k2">)</span>,<span class="n">5</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">3</span><span class="k2">)</span>,<span class="n">6</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">3</span><span class="k2">)</span>,<span class="n">7</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">3</span><span class="k2">)</span>,<span class="n">8</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">3</span><span class="k2">)</span>,<span class="n">9</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">3</span><span class="k2">)</span>,<span class="n">10</span><span class="k2">)</span>\
<span class="number"> 40</span><span class="k3">=</span><span class="k3">=</span><span class="n">10</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,b,<span class="n">1</span>,<span class="n">1</span>,<span class="n">1</span>,<span class="n">2</span>,<span class="n">10</span>,B<span class="k2">(</span><span class="n">22</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="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="n">1</span><span class="k3">+</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">8</span><span class="k2">)</span><span class="k3">=</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">7</span><span class="k2">)</span><span class="k3">=</span><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="k3">+</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">=</span>
<span class="number"> 41</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</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="k3">+</span><span class="n">4</span><span class="k2">)</span><span class="k2">)</span>%<span class="n">7</span><span class="k2">)</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>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><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><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span>
<span class="number"> 42</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><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="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">2</span><span class="k2">]</span>
<span class="number"> 43</span><span class="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k3">+</span>B<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">[</span><span class="n">1</span><span class="k2">]</span>,B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span><span class="n">3</span><span class="k2">]</span><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>B<span class="k2">(</span><span class="n">22</span>,<span class="n">0</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/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="number"> 44</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="n">50</span>,<a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a>,<span class="n">50</span><span class="k3">+</span><a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a>,<a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a>,<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,b,<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</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="n">0</span>,\
<span class="number"> 45</span><span class="n">12</span>,<span class="n">22</span>,<span class="n">0</span>,<span class="n">50</span>,<span class="n">192</span>,<span class="n">352</span><span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">3</span><span class="k2">)</span><span class="k3">+</span><span class="k3">+</span><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/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>b,<span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span>B<span class="k2">(</span><span class="n">22</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="k2">[</span><span class="n">0</span><span class="k2">]</span>
<span class="number"> 46</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span>,<span class="n">50</span><span class="k3">+</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span>B<span class="k2">(</span><span class="n">22</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="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span>,<span class="n">14</span><span class="k3">+</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">1</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span>B<span class="k2">(</span><span class="n">22</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="k2">[</span><span class="n">0</span><span class="k2">]</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</span>
<span class="number"> 47</span>,<span class="n">50</span><span class="k3">+</span><span class="n">14</span><span class="k3">+</span><span class="k2">(</span>B<span class="k2">(</span><span class="n">22</span>,<span class="n">2</span><span class="k2">)</span><span class="k3">+</span>p<span class="k2">[</span>P<span class="k2">]</span><span class="k2">[</span>R<span class="k2">]</span><span class="k2">[</span>B<span class="k2">(</span><span class="n">22</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="k2">[</span><span class="n">1</span><span class="k2">]</span><span class="k2">)</span><span class="k3">*</span><span class="n">16</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="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="number"> 48</span>,<span class="n">50</span>,<span class="n">0</span>,<span class="n">0</span>,<a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a>,<a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a><span class="k2">)</span><span class="k2">;</span><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="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>
</div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Thu, 12 Feb 2004 09:08:52 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Lillo, I tried your game, but all I could see was a starfield, and if I pressed space, also explosions here and there. :/ Oh, and does your starfield really have a motion blur effect, or is it just my monitor doing tricks?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Fladimir da Gorf)</author>
		<pubDate>Fri, 13 Feb 2004 13:38:45 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>Lillo, I tried your game, but all I could see was a starfield, and if I pressed space, also explosions here and there. :/ Oh, and does your starfield really have a motion blur effect, or is it just my monitor doing tricks?</p></div></div><p>
Thats unfortunetly all I got as well <img src="http://www.allegro.cc/forums/smileys/sad.gif" alt=":(" /> no sprites, just a star field, bullets, and explosions.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Thomas Fjellstrom)</author>
		<pubDate>Fri, 13 Feb 2004 22:55:14 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>Thats unfortunetly all I got as well  no sprites, just a star field, bullets, and explosions.</p></div></div><p>

That&#39;s way more features than some <a href="http://www.gamespot.com/pc/driving/bigrigsotrr/review.html">commercial games</a>.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (zaphire)</author>
		<pubDate>Sat, 14 Feb 2004 04:37:39 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>zaphire: your link is a little broken, I had to type it in manually. Anyway, that&#39;s funny stuff. What was going through that company&#39;s mind when they released that game? I guess maybe they thought people would buy it just so they could have a good laugh.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Sat, 14 Feb 2004 04:52:51 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Matt: could you compress that even more by grouping all those arrays into single numbers using bits?</p><p>Marcello
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Marcello)</author>
		<pubDate>Sat, 14 Feb 2004 05:07:37 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I know - the original restriction was just line numbers (semicolons), so I didn&#39;t bother with anything like that. It still contains a lot of other things that could be redone for char count. All I did above was use a couple #defines to shorten the code. </p><p>I&#39;m sure one could get an allegro tetris game in 25x80, but I don&#39;t have the time to waste at the moment...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Matthew Leverton)</author>
		<pubDate>Sat, 14 Feb 2004 05:39:36 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Krzysztof, that is truely an impressive piece of coding.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Karadoc ~~)</author>
		<pubDate>Sat, 14 Feb 2004 07:14:01 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>William: Yeah.. its hilarious. Not sure why the link isn&#39;t working, might have something to do with gamespot trying to kill Allegro.cc&#39;s frame code. For more information (like how the company hired russian programmers to do the coding - because they claim its cheaper) check out this thread: <a href="http://www.complexgames.com/forum/viewtopic.php?t=307">http://www.complexgames.com/forum/viewtopic.php?t=307</a>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (zaphire)</author>
		<pubDate>Sat, 14 Feb 2004 14:35:31 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>zaphire, uh no, its because you have the format for allegro.cc&#39;s links wrong <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /> its [URL addr]title[/URL] not [URL=&quot;addr&quot;]title[/URL] (all lower case of course).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Thomas Fjellstrom)</author>
		<pubDate>Sat, 14 Feb 2004 23:14:01 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Foiled again. ^_^ Maybe I should start getting some sleep soon... :\
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (zaphire)</author>
		<pubDate>Sat, 14 Feb 2004 23:56:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>heheheh. That was well worth the read. Absolutely hilarious. Almost hard to believe they could do that bad.. like, no sound? No collisions? No racing in a racing game? No level boundaries? Geez. Unless it&#39;s included in a 99 cent bundle of 10 similar games, I just don&#39;t understand how something like that could ever get published <img src="http://www.allegro.cc/forums/smileys/rolleyes.gif" alt="::)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Derezo)</author>
		<pubDate>Sun, 15 Feb 2004 01:58:46 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I love the reader reviews...the guy who examines its possible artist interpretations is right on. </p><p>&quot;What is the point of even trying? comes a plaintive cry from Big Rigs. The answer is apparent. There is no point. </p><p>Time to lay down and die. This comment on society is driven home (or in fact, not driven at all) even further by the computer AI. It doesn&#39;t even leave the starting gate. Much like the dreams and aspirations we harbour as youth, reving our engines on a starting line where the crack of the pistol never comes. Meanwhile, those of privledge cruise to easy victory, unconcerned over such mundane things as rent or grocery bills or collideable landscapes. The societal implications here in the game are staggering.&quot;</p><p>Yet further proof that Video Games = Art. (not that I needed any) <br /><img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (zaphire)</author>
		<pubDate>Sun, 15 Feb 2004 05:23:37 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Funny, yet my brain has left my head and is now eating itself over trying to understand why this was ever released as a game? It&#39;s worse than looking at the Windows code(which will corrupt anything you code from that point on). Just...just...horrible...</p><p>This isn&#39;t art, this is pure agony.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Sun, 15 Feb 2004 11:15:46 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>It can&#39;t not be art... but it can be <b>bad</b> art.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (zaphire)</author>
		<pubDate>Sun, 15 Feb 2004 22:44:57 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>zaphire: You&#39;d probably enjoy <i>lucky wander boy</i> -- it&#39;s a book in which the main character reviews old video games in that style (as well as doing many other things, but the video game reviews are central to the plot).  For example, in the midst of a Donkey Kong review, we get lines like: &quot;It is difficult to ignore the similarities between Donkey Kong (the creature) and the demiurge of the Gnotic heresies.&quot; ... great wtf factor, there.<br />(And aside from that, it&#39;s just a good book)<br />(Oh, and it&#39;s by d. b. weiss)</p><p>And yeah, that review (the truck one you pointed out) is awesome.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Mon, 16 Feb 2004 02:15:04 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Sorry for the delay... I checked this thread the day after I posted my entry, and found no feedback, and I checked it again only yesterday. So since then I&#39;ve hacked my code a bit to make it work on Windows too (I coded it under MacOS X and it worked fine under it; it was a matter of a <span class="source-code">D<span class="k3">+</span><span class="k3">*</span>l<span class="k3">+</span><span class="k3">+</span></span> expression that under Win didn&#39;t work as it was meant to... weird), and as I was there I also improved the &quot;packing&quot; of the code, allowing me to add proper collision detection between enemies and player... so the player can now die and the game end <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /><br />No space to add proper score keeping though <img src="http://www.allegro.cc/forums/smileys/sad.gif" alt=":(" /></p><p>Anyway, here it is (again):</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;//Monospace Shooter 80x25 lines, in memory of Milo Sedlacek</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="n">5</span><span class="k2">]</span>,<span class="k3">*</span>r<span class="k2">;</span><span class="k1">char</span><span class="k3">*</span>d<span class="k2">;</span><span class="k1">volatile</span> <span class="k1">int</span> t,E,i,j<span class="k3">=</span><span class="n">0</span>,x,y,L,p,f,<span class="k3">*</span>l,W<span class="k3">=</span><span class="n">320</span>,H<span class="k3">=</span><span class="n">200</span>,D<span class="k2">[</span><span class="k2">]</span><span class="k3">=</span><span class="k2">{</span><span class="n">10</span>,\</td></tr><tr><td class="number">3</td><td><span class="n">648</span>,<span class="n">15</span>,<span class="n">657</span>,<span class="n">26</span>,<span class="n">717</span>,<span class="n">35</span>,<span class="n">165</span>,<span class="n">36</span>,<span class="n">322</span>,<span class="k3">-</span><span class="n">1021313012</span>,<span class="k3">-</span><span class="n">2122071033</span>,<span class="n">1597440</span>,<span class="n">25149544</span>,<span class="n">67100</span>\</td></tr><tr><td class="number">4</td><td><span class="n">736</span>,<span class="n">8192</span>,<span class="n">103284803</span>,<span class="k3">-</span><span class="n">1032834184</span>,<span class="k3">-</span><span class="n">2121207582</span>,<span class="n">1644691152</span>,<span class="n">133308448</span>,<span class="k3">-</span><span class="n">288325278</span>,<span class="k3">-</span><span class="n">10</span>\</td></tr><tr><td class="number">5</td><td><span class="n">32810256</span>,<span class="n">3373058</span>,<span class="n">1124075048</span>,<span class="n">8192</span>,<span class="n">3145728</span>,<span class="n">871893760</span>,<span class="n">272880001</span>,<span class="n">360844072</span>,<span class="n">1217207</span>\</td></tr><tr><td class="number">6</td><td><span class="n">235</span>,<span class="k3">-</span><span class="n">1444069639</span>,<span class="n">805047120</span>,<span class="n">7356545</span>,<span class="n">8384526</span>,<span class="n">22511061</span>,<span class="n">955345</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><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a></td></tr><tr><td class="number">7</td><td><span class="k3">*</span>G<span class="k2">(</span><span class="k1">int</span><span class="k3">*</span>g,<span class="k1">int</span> s<span class="k2">)</span><span class="k2">{</span>j<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>x<span class="k3">=</span>s<span class="k3">&amp;</span><span class="n">31</span><span class="k2">;</span>s<span class="k3">/</span><span class="k3">=</span><span class="n">32</span><span class="k2">;</span>r<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,x<span class="k2">)</span><span class="k2">;</span>x<span class="k3">*</span><span class="k3">=</span>s<span class="k2">;</span>d<span class="k3">=</span>r-&gt;dat<span class="k2">;</span><span class="k1">for</span><span class="k2">(</span><span class="k2">;</span>x<span class="k2">;</span>x--,</td></tr><tr><td class="number">8</td><td>d<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k3">*</span>d<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>g<span class="k3">&amp;</span><span class="k2">(</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><span class="k3">*</span>d<span class="k3">=</span><span class="n">11</span><span class="k2">;</span><span class="k3">+</span><span class="k3">+</span>j&gt;31?j<span class="k3">=</span><span class="n">0</span>,g<span class="k3">+</span><span class="k3">+</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span><span class="k1">return</span> r<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="k1">struct</span><span class="k2">{</span><span class="k1">int</span></td></tr><tr><td class="number">9</td><td>t<span class="k2">;</span><span class="k1">float</span> x,y,v,h<span class="k2">;</span><span class="k2">}</span>e<span class="k2">[</span>W<span class="k2">]</span>,<span class="k3">*</span>m<span class="k3">=</span>e<span class="k3">+</span><span class="n">100</span>,<span class="k3">*</span>o<span class="k3">=</span>e<span class="k3">+</span>H,<span class="k3">*</span>C,<span class="k3">*</span>M,<span class="k3">*</span>X,N<span class="k3">=</span><span class="k2">{</span><span class="n">0</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_k\</td></tr><tr><td class="number">10</td><td>eyboard<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">15</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">0</span>,W,H,<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>,l<span class="k3">=</span>D<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>,l<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>b<span class="k2">[</span>i</td></tr><tr><td class="number">11</td><td><span class="k2">]</span><span class="k3">=</span>G<span class="k2">(</span>D<span class="k3">+</span><span class="k3">*</span>l,<span class="k3">*</span><span class="k2">(</span><span class="k3">+</span><span class="k3">+</span>l<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>l<span class="k3">=</span>D<span class="k2">;</span>r<span class="k3">=</span><a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span>W,H<span class="k2">)</span><span class="k2">;</span>t<span class="k3">=</span>x<span class="k3">=</span>f<span class="k3">=</span>p<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>y<span class="k3">=</span>L<span class="k3">=</span>E<span class="k3">=</span><span class="n">96</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>e,<span class="n">0</span>,<span class="k1">sizeof</span><span class="k2">(</span></td></tr><tr><td class="number">12</td><td>e<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>E<span class="k2">)</span><span class="k2">{</span>clear<span class="k2">(</span>r<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">99</span>,C<span class="k3">=</span>o,M<span class="k3">=</span>m<span class="k2">;</span>i<span class="k2">;</span>i--,C<span class="k3">+</span><span class="k3">+</span>,M<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>j<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="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>C-&gt;t<span class="k3">&amp;</span><span class="k3">&amp;</span>i<span class="k3">&lt;</span><span class="n">80</span><span class="k2">)</span>C</td></tr><tr><td class="number">13</td><td><span class="k3">-</span><span class="k3">&gt;</span>t<span class="k3">=</span><span class="n">1</span>,C-&gt;x<span class="k3">=</span>W,C-&gt;y<span class="k3">=</span>j%H,C-&gt;v<span class="k3">=</span><span class="k3">-</span><span class="k2">(</span>j%<span class="n">9</span><span class="k2">)</span><span class="k3">/</span><span class="n">6</span>.<span class="k3">-</span><span class="n">1</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C-&gt;t<span class="k3">&amp;</span><span class="n">1</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>r,C-&gt;x,C-&gt;y,<span class="n">11</span><span class="k2">)</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C\</td></tr><tr><td class="number">14</td><td><span class="k3">-</span><span class="k3">&gt;</span>x<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k3">*</span>C<span class="k3">=</span>N<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C-&gt;t<span class="k3">&amp;</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>r,C-&gt;x<span class="k3">+</span><span class="n">5</span>,C-&gt;y<span class="k3">+</span><span class="n">5</span>,MIN<span class="k2">(</span>C-&gt;h,<span class="n">15</span><span class="k2">)</span>,<span class="n">11</span><span class="k2">)</span><span class="k2">;</span>C-&gt;h&gt;15?circ\</td></tr><tr><td class="number">15</td><td>lefill<span class="k2">(</span>r,C-&gt;x<span class="k3">+</span><span class="n">5</span>,C-&gt;y<span class="k3">+</span><span class="n">5</span>,C-&gt;h-15,<span class="n">0</span><span class="k2">)</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span>C-&gt;h<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C-&gt;h&gt;30<span class="k2">)</span><span class="k3">*</span>C<span class="k3">=</span>N<span class="k2">;</span><span class="k2">}</span>C-&gt;x<span class="k3">+</span><span class="k3">=</span>C-&gt;v<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>M-&gt;t</td></tr><tr><td class="number">16</td><td><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">75</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span><span class="k3">!</span>f<span class="k2">)</span>f<span class="k3">=</span><span class="n">15</span>,<span class="k3">*</span>M<span class="k3">=</span>N,M-&gt;t<span class="k3">=</span><span class="n">1</span>,M-&gt;x<span class="k3">=</span>x<span class="k3">+</span>f,M-&gt;y<span class="k3">=</span>y<span class="k3">+</span><span class="n">3</span>,M-&gt;v<span class="k3">=</span><span class="n">3</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>M-&gt;t<span class="k2">)</span><span class="k2">{</span>M-&gt;x&gt;W?M-&gt;t<span class="k3">=</span><span class="n">0</span><span class="k2">:</span></td></tr><tr><td class="number">17</td><td><span class="n">0</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>r,b<span class="k2">[</span><span class="n">4</span><span class="k2">]</span>,M-&gt;x,M-&gt;y<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">99</span>,X<span class="k3">=</span>e<span class="k2">;</span>j<span class="k2">;</span>j--,X<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k1">if</span><span class="k2">(</span>X-&gt;t<span class="k3">&amp;</span><span class="k3">&amp;</span>M-&gt;x<span class="k3">+</span><span class="n">9</span><span class="k3">&gt;</span>X-&gt;x<span class="k3">&amp;</span><span class="k3">&amp;</span>M\</td></tr><tr><td class="number">18</td><td><span class="k3">-</span><span class="k3">&gt;</span>x<span class="k3">&lt;</span>X-&gt;x<span class="k3">+</span><span class="n">21</span><span class="k3">&amp;</span><span class="k3">&amp;</span>M-&gt;y&gt;X-&gt;y<span class="k3">&amp;</span><span class="k3">&amp;</span>M-&gt;y<span class="k3">&lt;</span>X-&gt;y<span class="k3">+</span><span class="n">16</span><span class="k2">)</span>X-&gt;t<span class="k3">=</span><span class="n">2</span>,X-&gt;h<span class="k3">=</span><span class="n">0</span>,<span class="k3">*</span><span class="k2">(</span>X<span class="k3">+</span>H<span class="k2">)</span><span class="k3">=</span><span class="k3">*</span>X,<span class="k3">*</span>M<span class="k3">=</span><span class="k3">*</span>X<span class="k3">=</span>N<span class="k2">;</span><span class="k2">}</span>M-&gt;x<span class="k3">+</span><span class="k3">=</span>M-&gt;</td></tr><tr><td class="number">19</td><td>v<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">99</span>,C<span class="k3">=</span>e<span class="k2">;</span>i<span class="k2">;</span>i--,C<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>C-&gt;t?<a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>r,b<span class="k2">[</span>C-&gt;t<span class="k2">]</span>,C-&gt;x,C-&gt;y<span class="k2">)</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span>C-&gt;t<span class="k3">=</span><span class="k3">=</span><span class="n">2</span>?C-&gt;y</td></tr><tr><td class="number">20</td><td><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>C-&gt;h<span class="k2">)</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span>C-&gt;h<span class="k3">+</span><span class="k3">=</span>.<span class="n">02</span><span class="k2">;</span>C-&gt;x<span class="k3">+</span><span class="k3">=</span>C-&gt;v<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>C-&gt;x<span class="k3">&lt;</span><span class="k3">-</span><span class="n">20</span><span class="k2">)</span><span class="k3">*</span>C<span class="k3">=</span>N<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>E&gt;0<span class="k3">&amp;</span><span class="k3">&amp;</span>x<span class="k3">+</span><span class="n">15</span><span class="k3">&gt;</span>C-&gt;x<span class="k3">&amp;</span><span class="k3">&amp;</span>x-15<span class="k3">&lt;</span>C-&gt;</td></tr><tr><td class="number">21</td><td>x<span class="k3">&amp;</span><span class="k3">&amp;</span>y<span class="k3">+</span><span class="n">9</span><span class="k3">&gt;</span>C-&gt;y<span class="k3">&amp;</span><span class="k3">&amp;</span>y-9<span class="k3">&lt;</span>C-&gt;y<span class="k2">)</span>o-&gt;t<span class="k3">=</span><span class="n">2</span>,o-&gt;h<span class="k3">=</span><span class="n">0</span>,o-&gt;x<span class="k3">=</span>x,o-&gt;y<span class="k3">=</span>y,E<span class="k3">=</span><span class="k3">-</span>E<span class="k2">;</span><span class="k2">}</span>E&gt;0?<a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>r,<span class="k3">*</span>b,x,</td></tr><tr><td class="number">22</td><td>y<span class="k2">)</span><span class="k2">:</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>r,<a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,W,H<span class="k2">)</span><span class="k2">;</span><span class="k1">for</span><span class="k2">(</span>t<span class="k3">=</span><span class="n">0</span><span class="k2">;</span><span class="k3">!</span>t<span class="k2">;</span><span class="k2">)</span><span class="k2">;</span>L--<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><span class="k3">*</span>l<span class="k2">;</span>C<span class="k3">=</span>e<span class="k3">+</span>p<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>i<span class="k2">;</span>i</td></tr><tr><td class="number">23</td><td><span class="k3">-</span><span class="k3">-</span>,L<span class="k3">/</span><span class="k3">=</span><span class="n">4</span>,C<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span><span class="k3">*</span>C<span class="k3">=</span>N<span class="k2">;</span>C-&gt;t<span class="k3">=</span>L<span class="k3">&amp;</span><span class="n">3</span><span class="k2">;</span>C-&gt;x<span class="k3">=</span>W<span class="k3">+</span><span class="k2">(</span>i%<span class="n">4</span><span class="k2">)</span><span class="k3">*</span><span class="n">24</span><span class="k2">;</span>C-&gt;y<span class="k3">=</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">50</span><span class="k3">+</span>C-&gt;t<span class="k3">*</span><span class="n">25</span><span class="k2">)</span>%H<span class="k2">;</span>C-&gt;v<span class="k3">=</span><span class="k3">-</span><span class="n">3</span>.<span class="k3">/</span>C</td></tr><tr><td class="number">24</td><td><span class="k3">-</span><span class="k3">&gt;</span>t<span class="k2">;</span>C-&gt;h<span class="k3">=</span>p<span class="k2">;</span>p<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>p&gt;99?p<span class="k3">=</span><span class="n">0</span><span class="k2">:</span><span class="n">0</span><span class="k2">;</span><span class="k2">}</span>L<span class="k3">=</span>E<span class="k2">;</span>l<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>l&gt;D<span class="k3">+</span><span class="n">36</span>?l<span class="k3">=</span>D:0<span class="k2">;</span><span class="k2">}</span>f?f--:0<span class="k2">;</span>E<span class="k3">&lt;</span><span class="n">0</span>?E<span class="k3">+</span><span class="k3">+</span><span class="k2">:</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="k3">&amp;</span><span class="k3">&amp;</span></td></tr><tr><td class="number">25</td><td>x<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">83</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>x<span class="k3">&lt;</span>W<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">84</span><span class="k2">]</span><span class="k3">&amp;</span><span class="k3">&amp;</span>y<span class="k2">)</span>y--<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="k3">&amp;</span><span class="k3">&amp;</span>y<span class="k3">&lt;</span>H<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><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>

Arrows to move, space to fire. To end the game, you must die <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (lillo)</author>
		<pubDate>Mon, 16 Feb 2004 02:16:21 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>lillo: I can&#39;t see my avatar in the game; the starfield and enemies seems to work fine, as do collision and firing as I can make stuff exploded and can die myself, but I have no idea where my guy is.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Mon, 16 Feb 2004 02:23:01 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>humm, it works fine under WinXP... I compiled the code with<br /><span class="source-code">gcc <span class="k3">-</span>s <span class="k3">-</span>O3 mono.c <span class="k3">-</span>o mono.exe <span class="k3">-</span>lalleg</span><br />and apart from two warnings it&#39;s ok. My gcc is 2.95.3-5 from an old MingW32 version.</p><p>Anyone else experimenting problems with my entry?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (lillo)</author>
		<pubDate>Mon, 16 Feb 2004 03:42:50 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>With those options I get:<br />gcc -s -03 blah.c -o blah `allegro-config --libs`<br />gcc: unrecognized option `-03&#39;<br />blah.c: In function `_mangled_main&#39;:<br />blah.c:11: warning: passing arg 1 of `G&#39; discards qualifiers from pointer target type</p><p>And the same bug regarding the player not appearing.<br />I can&#39;t actually see the player&#39;s shots either; I only presume they exist &#39;cause enemies blow up when I hold space.</p><p>I&#39;m using &quot;gcc version 3.3.3 20040125 (prerelease) (Debian)&quot; and (of course) Debian linux.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Mon, 16 Feb 2004 05:10:42 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Zaphos:<br />-O3<br />as in, Oh Three. Not Zero Three.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Mon, 16 Feb 2004 05:25:12 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>lillo: Works fine on DJGPP. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> The only bug I`ve found is that player go outside the screen at bottom a bit and some score system could be great. Anyway, nice game with nice graphics. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Mon, 16 Feb 2004 06:36:32 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>WH: Ooop! <img src="http://www.allegro.cc/forums/smileys/embarassed.gif" alt=":-[" /><br />It seems that when I compile with -O3 the program works perfectly!  But when I compile without optimizations the sprites are garbled and there are no player / player bullets.  Weird ... lillo is clearly doing something crazy in there ...<br />Good game, though!  Nice gfx!<br />Edit: If one goes up at the very beginning, one seems to spontaneously combust ...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Zaphos)</author>
		<pubDate>Mon, 16 Feb 2004 08:11:18 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>lillo: Well I tried to compile it myself and got nothin but a load of errors. invalid conversions from void * to char*, memset undeclared, etc... Big list of errors. I&#39;m using MinGW32 3.2.3 and the compiler options you specified.</p><p>EDIT: nm, changed filename to mono.c and compiled with gcc.</p><p>EDIT: wow, that&#39;s a great game for 80x25.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Mon, 16 Feb 2004 08:21:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Attached is a new (the last, I promise!) version of my entry. I&#39;m not inlining it as code not to bloat this thread even more than it already is... Anyway, I&#39;ve had an idea on how to pack the source even more; my sprites data was stored as integer numbers... that take much space. So I converted them all to a big string and modified the sprite generation algorithm. The result is I saved 1 line and a half, and with some clever coding I used them to add score keeping, hi-score and game restart after you die. Oh, and mines now chase you <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /><br />Have fun, and press ESC to quit at any time!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (lillo)</author>
		<pubDate>Tue, 17 Feb 2004 04:23:37 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>JEBUS!  I &lt;3 THIS ENTRY LILLO.  You&#39;ve got my vote unless i can vote for myself &lt;3
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Ryan Broomfield)</author>
		<pubDate>Tue, 17 Feb 2004 04:38:23 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Is the compition over now? It&#39;s the 17th, didn&#39;t it end the 16th... I wanna know who wins <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Wed, 18 Feb 2004 04:38:52 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Nah, it&#39;s not over. Cause I&#39;m not done my own entry.</p><p>Yeah, I&#39;m taking advantage of my position. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Goodbytes)</author>
		<pubDate>Wed, 18 Feb 2004 09:07:45 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hehe. I have some syntax coloring code for my entry, but MSVC&#39;s debugger is offsetting everything in my code by 18 lines, so it&#39;s rather hard to debug it <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Wed, 18 Feb 2004 09:13:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>but MSVC&#39;s debugger is offsetting everything in my code by 18 lines</p></div></div><p>
You could use #line macro.<br /><span class="source-code"><span class="p">#line &lt;next-line-no&gt; "&lt;file-name&gt;"</span></span></p><p>Well, maybe I`ll manage to finish my second entry. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Wed, 18 Feb 2004 23:07:52 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>ok, I promised not to post a new version again, but I discovered some bugs, and I <i>had</i> to fix them, you know <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" /> And on the way I also compressed the thing a bit more, to add a start and game over text... I could save another 2-3 characters but no way to use them, so I wasted them for alignment purposes <img src="http://www.allegro.cc/forums/smileys/cool.gif" alt="8-)" /></p><p>So I&#39;m attaching it here; I feel authorized as the competition still has no deadline set... GoodBytes, are you still there?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (lillo)</author>
		<pubDate>Thu, 19 Feb 2004 21:45:10 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Well, I don`t want to nitpick, but third line has 81 chars in it so I guess you`ll have to post again. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /></p><p>Anyway, still very nice game (but I think I liked teal color more). <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Thu, 19 Feb 2004 22:05:19 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>D&#39;oh!!</p><p>Under my IDE on OSX that line was shown to be 80 characters... This is a side effect of using a binary string for data... even if I only used characters 96-223 (7 bit) exactly to avoid this!</p><p>Anyway, it&#39;s now fixed. And I also fixed another little bug with mines <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /><br />BTW, also changed color back to cyan; I also liked it more, but the use of white was not random: I needed the constant &quot;15&quot; on other places of the code too, so... But now I optimized things a bit and made it possible to use cyan again. Actually you can change the color to whatever you like without other consequences: just modify the &quot;c&quot; variable, declared at line 2.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (lillo)</author>
		<pubDate>Thu, 19 Feb 2004 23:45:35 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>And I also fixed another little bug with mines</p></div></div><p>
I thought that was a feature. They had really cool movement (although a bit illogical). <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Fri, 20 Feb 2004 00:53:02 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>The bug was their vertical speed was not limited while it should have been. Now they still chase you, but when you approach them their speed will be high instead of very high. And maybe now they&#39;re more deadly as their horizontal speed is a bit higher than the player&#39;s one, so you can&#39;t step back easily to destroy them if they&#39;re near you...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (lillo)</author>
		<pubDate>Fri, 20 Feb 2004 01:38:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>My highscore on this version was 481, while ~340 on the previous.</p><p>For some reason my keyboard doesn&#39;t like up+left at the same time, that really cramps my style.  Any chance on a non 80x25 version with either key config, or gamepad support?</p><p>Marcello
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Marcello)</author>
		<pubDate>Fri, 20 Feb 2004 02:58:06 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I played it a bit too and got 1719. <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" /></p><p>lillo: maybe you could replace space key with a Ctrl or Alt? Keyboards should behave better with eg. Ctrl still held down than with space (on mine space key wasn`t any problem). <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>[edit: new highscore: 2751 <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />]
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Fri, 20 Feb 2004 03:14:21 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I&#39;m still here! Just bogged down with work. I&#39;m not going to disappear into a black hole or anything. I am currently both<br />(a) very busy, and<br />(b) very not finished my entry and deciding to unfairly extend the competition until I&#39;m done<br />But I&#39;ll try to finish it up. Basically I just have to compress the thing. And it&#39;s really nothing overly special, so don&#39;t expect something logical, like it being a good entry since I had lots of time.</p><p>Anyway this thing will be wrapping up soon.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Goodbytes)</author>
		<pubDate>Sat, 21 Feb 2004 03:24:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>post code and we&#39;ll compress it. <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Sat, 21 Feb 2004 06:57:55 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Could I post my new project for a little compression? <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /></p><p>I think I`ll manage to do it myself since I need only few bytes. I`m writing a Rogue-like Hack`n`Slash RPG with experience, spells, items, monsters, dynamically generated dungeons and everything what RPG should have. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> I have a beta written but it still needs a lot of balancing. Any beta-testers? <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" /></p><p>I think, we should make 4096 bytes code competition someday. Nice game engine can be fit in 2k and there will be another 2k for really nice gameplay. This could be very interesting. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Sat, 21 Feb 2004 07:49:28 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I wrote this about two weeks ago, try to escape from The Dungeon Of Infinitum <img src="http://www.allegro.cc/forums/smileys/wink.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 "allegro.h"</span></td></tr><tr><td class="number">2</td><td><span class="p">#define a(z){px+=cos(pa)*z;py+=sin(pa)*z;}</span></td></tr><tr><td class="number">3</td><td><span class="p">#define b blit(dblbuf,screen,0,0,0,0,320,240)</span></td></tr><tr><td class="number">4</td><td><span class="p">#define c pa+((float)(sx-160)/160.0)</span></td></tr><tr><td class="number">5</td><td><span class="p">#define d 6.283185</span></td></tr><tr><td class="number">6</td><td><span class="p">#define e(y,x,w) for(y=0;y&lt;x;y+=w)</span></td></tr><tr><td class="number">7</td><td><span class="p">#define f clear_bitmap(dblbuf)</span></td></tr><tr><td class="number">8</td><td><span class="p">#define g(u,v) textprintf_ex(dblbuf,font,u,v,255,0,</span></td></tr><tr><td class="number">9</td><td><span class="k1">static</span> <span class="k1">volatile</span> <span class="k1">int</span> t<span class="k2">;</span><span class="k1">static</span> <span class="k1">void</span> tmr<span class="k2">(</span><span class="k1">void</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>tmr<span class="k2">)</span><span class="k2">;</span><span class="k1">int</span> main<span class="k2">(</span></td></tr><tr><td class="number">10</td><td><span class="k1">void</span><span class="k2">)</span><span class="k2">{</span><span class="k1">float</span> px,py,px2,py2,pa<span class="k2">;</span><span class="k1">int</span> sx,tx,ty<span class="k2">;</span><span class="k1">float</span> vx,vy,vd<span class="k2">;</span><span class="k1">float</span> vdm<span class="k2">;</span><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span>dblbuf</td></tr><tr><td class="number">11</td><td><span class="k2">;</span><span class="k1">char</span> map<span class="k2">[</span><span class="n">4096</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>set_color_dep\</td></tr><tr><td class="number">12</td><td>th<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,<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.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>\</td></tr><tr><td class="number">13</td><td>tmr<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>tmr,<span class="n">23863</span><span class="k2">)</span><span class="k2">;</span>dblbuf<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>e<span class="k2">(</span>sx,<span class="n">4096</span>,<span class="n">1</span><span class="k2">)</span><span class="k2">{</span>map<span class="k2">[</span>s\</td></tr><tr><td class="number">14</td><td>x<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="k3">*</span>sx<span class="k2">)</span><span class="k3">&amp;</span><span class="n">15</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>map<span class="k2">[</span>sx<span class="k2">]</span><span class="k3">&lt;</span><span class="n">9</span><span class="k2">)</span>map<span class="k2">[</span>sx<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>g<span class="k2">(</span><span class="n">100</span>,<span class="n">8</span><span class="k2">)</span><span class="s">"Lichtenstein 3D 2"</span><span class="k2">)</span><span class="k2">;</span>g<span class="k2">(</span><span class="n">0</span>,<span class="n">24</span><span class="k2">)</span></td></tr><tr><td class="number">15</td><td><span class="s">"You woke up in a cave without any idea"</span><span class="k2">)</span><span class="k2">;</span>g<span class="k2">(</span><span class="n">0</span>,<span class="n">32</span><span class="k2">)</span><span class="s">"who you are or where you are.\</span></td></tr><tr><td class="number">16</td><td><span class="s">"</span><span class="k2">)</span><span class="k2">;</span>g<span class="k2">(</span><span class="n">0</span>,<span class="n">40</span><span class="k2">)</span><span class="s">"All you know is that you have to escape."</span><span class="k2">)</span><span class="k2">;</span>g<span class="k2">(</span><span class="n">70</span>,<span class="n">64</span><span class="k2">)</span><span class="s">"Press EnTER to c\</span></td></tr><tr><td class="number">17</td><td><span class="s">ontinue"</span><span class="k2">)</span><span class="k2">;</span>b<span class="k2">;</span><span class="k1">while</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="k3">&gt;</span><span class="k3">&gt;</span><span class="n">8</span><span class="k2">)</span><span class="k3">!</span><span class="k3">=</span>KEY_ENTER<span class="k2">)</span><span class="k2">;</span>px<span class="k3">=</span>py<span class="k3">=</span>pa<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><span class="k1">if</span><span class="k2">(</span></td></tr><tr><td class="number">18</td><td><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>pa-<span class="k3">=</span><span class="n">0</span>.<span class="n">05</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>pa<span class="k3">+</span><span class="k3">=</span><span class="n">0</span>.<span class="n">05</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>pa<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span>pa<span class="k3">=</span>d<span class="k3">+</span>pa<span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>pa&gt;d<span class="k2">)</span>pa<span class="k3">=</span>pa-</td></tr><tr><td class="number">19</td><td>d<span class="k2">;</span>px2<span class="k3">=</span>px<span class="k2">;</span>py2<span class="k3">=</span>py<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>a<span class="k2">(</span><span class="n">0</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_DOWN<span class="k2">]</span><span class="k2">)</span>a<span class="k2">(</span><span class="k3">-</span><span class="n">0</span>.<span class="n">1</span><span class="k2">)</span><span class="k2">;</span>tx<span class="k3">=</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span>px<span class="k3">&amp;</span><span class="n">63</span><span class="k2">;</span>ty<span class="k3">=</span></td></tr><tr><td class="number">20</td><td><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span>py<span class="k3">&amp;</span><span class="n">63</span><span class="k2">;</span><span class="k1">if</span><span class="k2">(</span>map<span class="k2">[</span>ty<span class="k3">*</span><span class="n">64</span><span class="k3">+</span>tx<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span>px<span class="k3">=</span>px2<span class="k2">;</span>py<span class="k3">=</span>py2<span class="k2">;</span><span class="k2">}</span>t--<span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>t<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>t<span class="k3">&lt;</span><span class="n">1</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></td></tr><tr><td class="number">21</td><td><span class="k2">(</span>dblbuf<span class="k2">)</span><span class="k2">;</span>e<span class="k2">(</span>sx,<span class="n">320</span>,<span class="n">4</span><span class="k2">)</span><span class="k2">{</span>vd<span class="k3">=</span><span class="n">0</span><span class="k2">;</span>vdm<span class="k3">=</span><span class="n">0</span>.<span class="n">5</span><span class="k2">;</span>vx<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_113.html" target="_blank">cos</a><span class="k2">(</span>c<span class="k2">)</span><span class="k3">*</span>vdm<span class="k2">;</span>vy<span class="k3">=</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a><span class="k2">(</span>c<span class="k2">)</span><span class="k3">*</span>vdm<span class="k2">;</span><span class="k1">while</span><span class="k2">(</span>vd<span class="k3">&lt;</span><span class="n">128</span><span class="k3">&amp;</span><span class="k3">&amp;</span>vd&gt;<span class="k3">=</span></td></tr><tr><td class="number">22</td><td><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>vd<span class="k3">+</span><span class="k3">=</span>vdm<span class="k2">;</span>tx<span class="k3">=</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span>px<span class="k3">+</span>vx<span class="k3">*</span>vd<span class="k2">)</span><span class="k3">&amp;</span><span class="n">63</span><span class="k2">;</span>ty<span class="k3">=</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span>py<span class="k3">+</span>vy<span class="k3">*</span>vd<span class="k2">)</span><span class="k3">&amp;</span><span class="n">63</span><span class="k2">;</span><span class="k1">if</span> <span class="k2">(</span>map<span class="k2">[</span>ty<span class="k3">*</span><span class="n">64</span><span class="k3">+</span>tx<span class="k2">]</span><span class="k2">)</span><span class="k2">{</span><span class="k1">if</span> <span class="k2">(</span>v\</td></tr><tr><td class="number">23</td><td>dm<span class="k3">!</span><span class="k3">=</span><span class="n">0</span>.<span class="n">125</span><span class="k2">)</span><span class="k2">{</span>vd-<span class="k3">=</span>vdm<span class="k2">;</span>vx<span class="k3">/</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span>vy<span class="k3">/</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span>vdm<span class="k3">/</span><span class="k3">=</span><span class="n">2</span><span class="k2">;</span><span class="k2">}</span><span class="k1">else</span> vd<span class="k3">=</span><span class="k3">-</span>vd<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span><span class="k1">if</span> <span class="k2">(</span>vd<span class="k3">&lt;</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span>vd<span class="k3">=</span><span class="k3">-</span>vd<span class="k2">;</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span></td></tr><tr><td class="number">24</td><td>dblbuf,sx,<span class="n">120</span><span class="k3">-</span><span class="n">240</span><span class="k3">/</span>vd,sx<span class="k3">+</span><span class="n">3</span>,<span class="n">120</span><span class="k3">+</span><span class="n">240</span><span class="k3">/</span>vd,<span class="k2">(</span>map<span class="k2">[</span>ty<span class="k3">*</span><span class="n">64</span><span class="k3">+</span>tx<span class="k2">]</span><span class="k3">*</span><span class="n">17</span><span class="k2">)</span><span class="k3">*</span><span class="k2">(</span><span class="n">1</span><span class="k3">-</span><span class="k2">(</span>vd<span class="k3">/</span><span class="n">128</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>b<span class="k2">;</span><span class="k2">}</span><span class="k2">}</span>ret\</td></tr><tr><td class="number">25</td><td>urn<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/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>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Pyykkö)</author>
		<pubDate>Tue, 24 Feb 2004 02:38:24 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>KK: Call it 100h and allow people that many bytes in their source. I almost did that, but it evolved into ACG.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Tue, 24 Feb 2004 02:44:36 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Don&#39;t you mean 1000h? Not sure you can do much of anything in 100h.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Tue, 24 Feb 2004 03:15:40 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I meant 1000h of course (4096b). <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> Maybe I`ll think about organizing it (unless Goodbytes would like to do it - he has much more experience in this) but not too soon since we have ScreenHack now. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>btw. I`ll check and I`ll try to fit some thing into 100h. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> Anyway I made &lt;100h (248b exactly) .com dos demo which was animated Julia set (but it was in asm and I put restriction on executable so I had more space).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Tue, 24 Feb 2004 04:10:21 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Not sure you can do much of anything in 100h. 
</p></div></div><p>

I&#39;ve seen a wolf-like 3d engine in 100h. I don&#39;t have it anymore though.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (LSd016)</author>
		<pubDate>Tue, 24 Feb 2004 04:15:27 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>100h of source code, or a 100h executable? 100h executable, that seems alright, but 100h of source is only 80x3.2, heh.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Tue, 24 Feb 2004 04:31:12 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>obviously it was a headerles executable for dos - .com
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (LSd016)</author>
		<pubDate>Tue, 24 Feb 2004 04:43:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Krzysztof Kluczek said:</div><div class="quote"><p>I think, we should make 4096 bytes code competition someday. Nice game engine can be fit in 2k and there will be another 2k for really nice gameplay.</p></div></div><p>

<a href="http://o2em.sourceforge.net">Videopac G7000</a> game executables have 2Kb wide...</p><p>And for those that are waiting for the <a href="http://www.geocities.com/screenhack2004/">ScreenHack collection</a>, I am too busy now, but I was test all entries of the first page and selected some of them. I&#39;ll try to upload it this week-end.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Niunio)</author>
		<pubDate>Tue, 24 Feb 2004 22:13:12 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Actually, I was thinking about 4kb limit for source code size. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Tue, 24 Feb 2004 22:18:52 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>...80x25=2000... </p><p>4kb would be cool too.</p><p>[side note]Wow, this tread is pretty big...</p><p>GB, finish you entry soon, before Matthew close this madness!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Niunio)</author>
		<pubDate>Tue, 24 Feb 2004 22:29:07 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Niunio: That&#39;s what pages are for. Actually, I hated pages until I decided to split up threads on the 100 marks, because it was taking so long to render.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Wed, 25 Feb 2004 02:49:19 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>Videopac G7000 game executables have 2Kb wide...</p></div></div><p>
That&#39;s some mad image compression.</p><p>Marcello
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Marcello)</author>
		<pubDate>Wed, 25 Feb 2004 21:56:18 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Marcello: What? Image compression?</p><p>VG7K was a video-game console from late &#39;70. I have some original cartridges that announces <b>Memory Extended 4Kb</b><img src="http://www.allegro.cc/forums/smileys/shocked.gif" alt=":o" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Niunio)</author>
		<pubDate>Thu, 26 Feb 2004 14:49:40 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Wow, this combo has almost gone on for an entire month <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Billybob)</author>
		<pubDate>Fri, 27 Feb 2004 01:28:29 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>please end it so we can vote <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Ryan Broomfield)</author>
		<pubDate>Sun, 29 Feb 2004 10:58:03 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I think this competition is taking a bit too long too. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /></p><p>Well, maybe I`ll manage to finish my 80x25 RPG (some balancing left) although I`m not working on it too hard (read: recently not at all). <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /></p><p>btw. I wonder if I was writing multiplayer game would I be allowed do make two apps: 80x25 server and 80x25 client for it? <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Krzysztof Kluczek)</author>
		<pubDate>Sun, 29 Feb 2004 20:55:40 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Sorry guys, I know we should be done the voting by now, but I got really swamped with schoolwork coupled with extracurricular activities and everything... I&#39;m almost done putting everything together.</p><p>So, anyway, no new entries.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Goodbytes)</author>
		<pubDate>Sun, 29 Feb 2004 23:43:43 +0000</pubDate>
	</item>
</rss>
