<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Datafile confusion</title>
		<link>http://www.allegro.cc/forums/view/588298</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Wed, 01 Nov 2006 01:01:15 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I have many nested datafiles and loading is giving me an issue. The layout is as such:</p><div class="source-code snippet"><div class="inner"><pre>Warrior.dat
<a href="http://www.allegro.cc/manual/DATAFILE" target="_blank"><span class="a">DATAFILE</span></a>   <span class="k2">(</span>WARRIOR<span class="k2">)</span>
   <a href="http://www.allegro.cc/manual/DATAFILE" target="_blank"><span class="a">DATAFILE</span></a>    <span class="k2">(</span>GREEN<span class="k2">)</span>
       <a href="http://www.allegro.cc/manual/DATAFILE" target="_blank"><span class="a">DATAFILE</span></a>    <span class="k2">(</span>WALK<span class="k2">)</span>
           <a href="http://www.allegro.cc/manual/DATAFILE" target="_blank"><span class="a">DATAFILE</span></a>    <span class="k2">(</span>NORTH<span class="k2">)</span>
               BITMAP1
               .....
           ... <span class="c">//south, east, west</span>
       <a href="http://www.allegro.cc/manual/DATAFILE" target="_blank"><span class="a">DATAFILE</span></a>    <span class="k2">(</span>IDLE<span class="k2">)</span>
           ... <span class="c">//just like the walk animation</span>
</pre></div></div><p>


So I&#39;m running a few tests and I don&#39;t understand what is going on. </p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td>  file <span class="k3">=</span> <a href="http://www.allegro.cc/manual/load_datafile" target="_blank"><span class="a">load_datafile</span></a><span class="k2">(</span><span class="s">"C:/warrior.dat"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">2</td><td>  <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>file<span class="k2">)</span></td></tr><tr><td class="number">3</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">"FAILED: Datafile load"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">4</td><td>&#160;</td></tr><tr><td class="number">5</td><td>        <a href="http://www.delorie.com/djgpp/doc/libc/libc_756.html" target="_blank">strcpy</a><span class="k2">(</span>name, <a href="http://www.allegro.cc/manual/get_datafile_property" target="_blank"><span class="a">get_datafile_property</span></a><span class="k2">(</span>file, <a href="http://www.allegro.cc/manual/DAT_ID" target="_blank"><span class="a">DAT_ID</span></a><span class="k2">(</span><span class="s">'N'</span>, <span class="s">'A'</span>, <span class="s">'M'</span>, <span class="s">'E'</span><span class="k2">)</span> <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/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span>name<span class="k2">)</span><span class="k2">;</span>   <span class="c">//WARRIOR</span></td></tr><tr><td class="number">7</td><td>&#160;</td></tr><tr><td class="number">8</td><td>  <span class="c">//GREEN</span></td></tr><tr><td class="number">9</td><td>  colorDat <span class="k3">=</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/DATAFILE" target="_blank"><span class="a">DATAFILE</span></a><span class="k3">*</span><span class="k2">)</span>file<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.dat<span class="k2">;</span></td></tr><tr><td class="number">10</td><td>  <a href="http://www.delorie.com/djgpp/doc/libc/libc_756.html" target="_blank">strcpy</a><span class="k2">(</span>name, <a href="http://www.allegro.cc/manual/get_datafile_property" target="_blank"><span class="a">get_datafile_property</span></a><span class="k2">(</span>colorDat, <a href="http://www.allegro.cc/manual/DAT_ID" target="_blank"><span class="a">DAT_ID</span></a><span class="k2">(</span><span class="s">'N'</span>, <span class="s">'A'</span>, <span class="s">'M'</span>, <span class="s">'E'</span><span class="k2">)</span> <span class="k2">)</span> <span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">11</td><td>  <a href="http://www.allegro.cc/manual/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span>name<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">12</td><td>&#160;</td></tr><tr><td class="number">13</td><td>  <span class="c">//WALK</span></td></tr><tr><td class="number">14</td><td>  animDat <span class="k3">=</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/DATAFILE" target="_blank"><span class="a">DATAFILE</span></a><span class="k3">*</span><span class="k2">)</span>colorDat<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.dat<span class="k2">;</span></td></tr><tr><td class="number">15</td><td>  <a href="http://www.delorie.com/djgpp/doc/libc/libc_756.html" target="_blank">strcpy</a><span class="k2">(</span>name, <a href="http://www.allegro.cc/manual/get_datafile_property" target="_blank"><span class="a">get_datafile_property</span></a><span class="k2">(</span>animDat, <a href="http://www.allegro.cc/manual/DAT_ID" target="_blank"><span class="a">DAT_ID</span></a><span class="k2">(</span><span class="s">'N'</span>, <span class="s">'A'</span>, <span class="s">'M'</span>, <span class="s">'E'</span><span class="k2">)</span> <span class="k2">)</span> <span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">16</td><td>  <a href="http://www.allegro.cc/manual/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span>name<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">17</td><td>&#160;</td></tr><tr><td class="number">18</td><td>  <span class="c">//IDLE - ERRORS HERE because animDat is nothing</span></td></tr><tr><td class="number">19</td><td>  animDat <span class="k3">=</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/DATAFILE" target="_blank"><span class="a">DATAFILE</span></a><span class="k3">*</span><span class="k2">)</span>colorDat<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.dat<span class="k2">;</span></td></tr><tr><td class="number">20</td><td>  <a href="http://www.delorie.com/djgpp/doc/libc/libc_756.html" target="_blank">strcpy</a><span class="k2">(</span>name, <a href="http://www.allegro.cc/manual/get_datafile_property" target="_blank"><span class="a">get_datafile_property</span></a><span class="k2">(</span>animDat, <a href="http://www.allegro.cc/manual/DAT_ID" target="_blank"><span class="a">DAT_ID</span></a><span class="k2">(</span><span class="s">'N'</span>, <span class="s">'A'</span>, <span class="s">'M'</span>, <span class="s">'E'</span><span class="k2">)</span> <span class="k2">)</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>name<span class="k2">)</span><span class="k2">;</span></td></tr></tbody></table></div></div><p>


Since colorDat has 2 datafiles nested away I would assume colorDat[0] gets the first datafile (WALK) and it does. I would also assume colorDat[1] would get the second datafile (IDLE) but it errors out. Any ideas?</p><p>I even exported the header file and from I can make of it what I have should be right. </p><div class="source-code snippet"><div class="inner"><pre>
<span class="p">#define WARRIOR_GREEN_WALK               0        /* FILE */</span>
<span class="p">#define WARRIOR_GREEN_IDLE               1        /* FILE */</span>
</pre></div></div><p>

I access WALK with 0, I should be able to access IDLE with 1 right?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Rick)</author>
		<pubDate>Wed, 01 Nov 2006 00:44:51 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>What a mess!:o<br />What is GREEN for?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Paul whoknows)</author>
		<pubDate>Wed, 01 Nov 2006 00:57:25 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Really? I think it&#39;s neat. Everything is it&#39;s own datafile. Anyway green is a colored unit. You can have green/red/blue etc. For now that is the way I&#39;m doing it, later adding transparent colors to the image that I can fill in at run-time. But really it shouldn&#39;t matter. Even if I remove GREEN or add another layer, I would think it should work. With this I access the layers based on their Name property in code, and my datafile can have any # of nested datafiles and it would load up without any other info.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Rick)</author>
		<pubDate>Wed, 01 Nov 2006 01:01:15 +0000</pubDate>
	</item>
</rss>
