<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>datafile problem</title>
		<link>http://www.allegro.cc/forums/view/591845</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Tue, 12 Jun 2007 04:08:21 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>ok now i just started using datafiles. working on a tile based snake.<br />im storing all my bitmaps (items, tiles, etc..) in a single .dat datafile.<br />through my loadmap function, i stored all my tiles id in<br />&lt;code&gt; map.layer[0].cell[j]&lt;i&gt;.id [/code ]<br />i tried drawing the map using this function, but it didn&#39;t work :</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="k1">void</span> drawMap<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">2</td><td>     </td></tr><tr><td class="number">3</td><td>  <span class="k1">int</span> i,j<span class="k2">;</span></td></tr><tr><td class="number">4</td><td>  <span class="k1">char</span> t_name<span class="k2">[</span><span class="n">64</span><span class="k2">]</span><span class="k2">;</span></td></tr><tr><td class="number">5</td><td>  </td></tr><tr><td class="number">6</td><td>  <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> MAP_HEIGHT<span class="k2">;</span> j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">7</td><td>    <span class="k1">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> MAP_WIDTH<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">8</td><td>    </td></tr><tr><td class="number">9</td><td>      <a href="http://www.delorie.com/djgpp/doc/libc/libc_737.html" target="_blank">sprintf</a><span class="k2">(</span>t_name, <span class="s">"TILE%d"</span>, map.layer<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.cell<span class="k2">[</span>j<span class="k2">]</span><span class="k3">&lt;</span>i&gt;.id<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">10</td><td>      <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><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><span class="k2">)</span>data<span class="k2">[</span>t_name<span class="k2">]</span>.dat,</td></tr><tr><td class="number">11</td><td>            DoubleBuffer, <span class="n">0</span>, <span class="n">0</span>,</td></tr><tr><td class="number">12</td><td>            i <span class="k3">*</span> TILE_SIZE, j <span class="k3">*</span> TILE_SIZE,</td></tr><tr><td class="number">13</td><td>            TILE_SIZE, TILE_SIZE</td></tr><tr><td class="number">14</td><td>            <span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">15</td><td>    </td></tr><tr><td class="number">16</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">17</td><td>  <span class="k2">}</span></td></tr><tr><td class="number">18</td><td>     </td></tr><tr><td class="number">19</td><td><span class="k2">}</span></td></tr></tbody></table></div></div><p>

now im out of ideas. is there a way of solving this?<br />or am i totally wrong and have to redo all this again (hope not..) ?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Fishcake)</author>
		<pubDate>Mon, 11 Jun 2007 18:25:19 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>This doesn&#39;t work because the &quot;name&quot; of the dat file content is a define for an index.<br />Try:
</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">int</span> first_tile <span class="k3">=</span> TILE0<span class="k2">;</span> <span class="c">/* or TILE1, no idea if you start at 0 or 1 */</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> MAP_HEIGHT<span class="k2">;</span> j<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>
    <span class="k1">for</span><span class="k2">(</span>i<span class="k3">=</span><span class="n">0</span><span class="k2">;</span> i <span class="k3">&lt;</span> MAP_WIDTH<span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span><span class="k2">{</span>
    
      <span class="c">/* This assumes that all tiles are listed one after another in the correct order */</span>
      <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><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><span class="k2">)</span>data<span class="k2">[</span>first_tile<span class="k3">+</span>map.layer<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.cell<span class="k2">[</span>j<span class="k2">]</span><span class="k3">&lt;</span>i&gt;.id<span class="k2">]</span>.dat,
            DoubleBuffer, <span class="n">0</span>, <span class="n">0</span>,
            i <span class="k3">*</span> TILE_SIZE, j <span class="k3">*</span> TILE_SIZE,
            TILE_SIZE, TILE_SIZE
            <span class="k2">)</span><span class="k2">;</span>
    
    <span class="k2">}</span>
  <span class="k2">}</span>
</pre></div></div><p>
If this doesn&#39;t work, you can also create an array of BITMAP* and load the bitmaps using the &quot;filename#obj_name&quot; syntax during start-up. So have no fear, we&#39;ll find a way to get this up and running <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (spellcaster)</author>
		<pubDate>Mon, 11 Jun 2007 18:32:00 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>weeee, it solved the problem! thanks a lot spellcaster, and thanks for replying real fast too <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Fishcake)</author>
		<pubDate>Mon, 11 Jun 2007 18:34:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>No problem. Oh, and if you select &quot;a problem with a specific answer&quot; when you create a thread, you can actually mark the problem as solved and give those who helped you a virtual cookie <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /></p><p>Coders like cookies.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (spellcaster)</author>
		<pubDate>Mon, 11 Jun 2007 18:38:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>hmm...i think i didn&#39;t select &quot;a problem with a specific answer&quot;, coz i cant see any checkbox saying &quot;the problem has been asnwered to my satisfication&quot;. selected the wrong one <img src="http://www.allegro.cc/forums/smileys/lipsrsealed.gif" alt=":-X" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Fishcake)</author>
		<pubDate>Mon, 11 Jun 2007 18:46:42 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>No problem at all. I&#39;ll compensate by making fun of julian_boolean.. um.. I mean.. um.. never mind.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (spellcaster)</author>
		<pubDate>Mon, 11 Jun 2007 18:49:16 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Love you too.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (julian_boolean)</author>
		<pubDate>Tue, 12 Jun 2007 04:08:21 +0000</pubDate>
	</item>
</rss>
