<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Stumped</title>
		<link>http://www.allegro.cc/forums/view/606709</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Tue, 15 Mar 2011 15:26:36 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>After Many Many hours of fiddling around the problem appears to be in how I&#39;m saving/loading my files. I don&#39;t see what I&#39;m doing wrong here... This was working fine until I updated my project, but now It&#39;s broken.</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="k1">void</span> CLayer::save<span class="k2">(</span>std::string a<span class="k2">)</span>
<span class="number">   2</span><span class="k2">{</span>
<span class="number">   3</span>  <span class="k1">if</span> <span class="k2">(</span>created<span class="k3">=</span><span class="k3">=</span> <span class="k1">true</span><span class="k2">)</span>
<span class="number">   4</span>  <span class="k2">{</span>
<span class="number">   5</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_FILE"><span class="a">ALLEGRO_FILE</span></a><span class="k3">*</span> file<span class="k2">;</span>
<span class="number">   6</span>
<span class="number">   7</span>    file <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_fopen"><span class="a">al_fopen</span></a><span class="k2">(</span>a.c_str<span class="k2">(</span><span class="k2">)</span>, <span class="s">"w"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">   8</span>    
<span class="number">   9</span>    <span class="k1">if</span><span class="k2">(</span>file<span class="k2">)</span>
<span class="number">  10</span>    std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span><span class="s">" Opened File "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> a <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  11</span>
<span class="number">  12</span>    <a href="http://www.allegro.cc/manual/al_fwrite32le"><span class="a">al_fwrite32le</span></a><span class="k2">(</span>file, map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  13</span>    std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"saved Map width "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> map.getWidth<span class="k2">(</span><span class="k2">)</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  14</span>    <a href="http://www.allegro.cc/manual/al_fwrite32le"><span class="a">al_fwrite32le</span></a><span class="k2">(</span>file, map.getHeight<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  15</span>    std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"saved Map Height "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> map.getHeight<span class="k2">(</span><span class="k2">)</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  16</span>
<span class="number">  17</span>    <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> h <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> h<span class="k3">&lt;</span>map.getHeight<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> h<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number">  18</span>    <span class="k2">{</span>
<span class="number">  19</span>      <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>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> w<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number">  20</span>      <span class="k2">{</span>
<span class="number">  21</span>        std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"iteration "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  22</span>        <a href="http://www.allegro.cc/manual/al_fwrite32le"><span class="a">al_fwrite32le</span></a><span class="k2">(</span>file, map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getId<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  23</span>        std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"saved "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getId<span class="k2">(</span><span class="k2">)</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  24</span>      <span class="k2">}</span>
<span class="number">  25</span>    <span class="k2">}</span>
<span class="number">  26</span>
<span class="number">  27</span>    <a href="http://www.allegro.cc/manual/al_fclose"><span class="a">al_fclose</span></a><span class="k2">(</span>file<span class="k2">)</span><span class="k2">;</span>
<span class="number">  28</span>    std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"Saved "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> a <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  29</span>  <span class="k2">}</span>
<span class="number">  30</span>
<span class="number">  31</span><span class="k2">}</span>
<span class="number">  32</span>
<span class="number">  33</span>
<span class="number">  34</span>oid CLayer::load<span class="k2">(</span>std::string a, std::string b<span class="k2">)</span>
<span class="number">  35</span><span class="k2">{</span>
<span class="number">  36</span>  <a href="http://www.allegro.cc/manual/ALLEGRO_FILE"><span class="a">ALLEGRO_FILE</span></a><span class="k3">*</span> file<span class="k2">;</span>
<span class="number">  37</span>  <a href="http://www.allegro.cc/manual/ALLEGRO_FILE"><span class="a">ALLEGRO_FILE</span></a><span class="k3">*</span> file2<span class="k2">;</span>
<span class="number">  38</span>
<span class="number">  39</span>  file <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_fopen"><span class="a">al_fopen</span></a><span class="k2">(</span>a.c_str<span class="k2">(</span><span class="k2">)</span>, <span class="s">"r"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  40</span>  file2 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_fopen"><span class="a">al_fopen</span></a><span class="k2">(</span>b.c_str<span class="k2">(</span><span class="k2">)</span>, <span class="s">"r"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  41</span>
<span class="number">  42</span>  <span class="k1">if</span> <span class="k2">(</span>file <span class="k3">&amp;</span><span class="k3">&amp;</span> file2<span class="k2">)</span>
<span class="number">  43</span>  <span class="k2">{</span><a href="http://www.allegro.cc/manual/al_fclose"><span class="a">al_fclose</span></a><span class="k2">(</span>file2<span class="k2">)</span><span class="k2">;</span>
<span class="number">  44</span>    <span class="k2">{</span>
<span class="number">  45</span>      <span class="k1">int</span> fwidth <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  46</span>      <span class="k1">int</span> fheight <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  47</span>
<span class="number">  48</span>      fwidth <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_fread32le"><span class="a">al_fread32le</span></a><span class="k2">(</span>file<span class="k2">)</span><span class="k2">;</span>
<span class="number">  49</span>      cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"Loaded file Width - "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> fwidth <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  50</span>      fheight <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_fread32le"><span class="a">al_fread32le</span></a><span class="k2">(</span>file<span class="k2">)</span><span class="k2">;</span>
<span class="number">  51</span>      cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"Loaded file Height - "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> fheight <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  52</span>      create<span class="k2">(</span>fwidth, fheight, b<span class="k2">)</span><span class="k2">;</span>
<span class="number">  53</span>      cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"created map with width "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> fwidth <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">" Height "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> fheight <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">" with pallet "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> b <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  54</span>
<span class="number">  55</span>      <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> h <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> h<span class="k3">&lt;</span>map.getHeight<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> h<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number">  56</span>      <span class="k2">{</span>
<span class="number">  57</span>        <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>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> w<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number">  58</span>        <span class="k2">{</span>
<span class="number">  59</span>          map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.setId<span class="k2">(</span><a href="http://www.allegro.cc/manual/al_fread32le"><span class="a">al_fread32le</span></a><span class="k2">(</span>file<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  60</span>          cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"iteration "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  61</span>          cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"Map Id "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getId<span class="k2">(</span><span class="k2">)</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  62</span>          
<span class="number">  63</span>          map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.setBmp<span class="k2">(</span>pallet.pallet<span class="k2">[</span>map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getId<span class="k2">(</span><span class="k2">)</span><span class="k2">]</span>.getBmp<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  64</span>        <span class="k2">}</span>
<span class="number">  65</span>      <span class="k2">}</span>
<span class="number">  66</span>
<span class="number">  67</span>      <a href="http://www.allegro.cc/manual/al_fclose"><span class="a">al_fclose</span></a><span class="k2">(</span>file<span class="k2">)</span><span class="k2">;</span>
<span class="number">  68</span>      std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"Loaded Map:"</span><span class="k3">&lt;</span><span class="k3">&lt;</span> a <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">" With Pallet :"</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> b <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  69</span>      loaded <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>
<span class="number">  70</span>    <span class="k2">}</span>
<span class="number">  71</span>  <span class="k2">}</span>
<span class="number">  72</span>  <span class="k1">else</span>
<span class="number">  73</span>    std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"Could Not Load "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> a <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">" Using "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> b <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  74</span><span class="k2">}</span>
<span class="number">  75</span>
<span class="number">  76</span><span class="k1">void</span> CLayer::create<span class="k2">(</span><span class="k1">int</span> a, <span class="k1">int</span> b, std::string c<span class="k2">)</span>
<span class="number">  77</span><span class="k2">{</span>
<span class="number">  78</span>  <a href="http://www.allegro.cc/manual/ALLEGRO_FILE"><span class="a">ALLEGRO_FILE</span></a><span class="k3">*</span> file<span class="k2">;</span>
<span class="number">  79</span>  file <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_fopen"><span class="a">al_fopen</span></a><span class="k2">(</span>c.c_str<span class="k2">(</span><span class="k2">)</span>, <span class="s">"r"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  80</span>  <span class="k1">if</span><span class="k2">(</span>file<span class="k2">)</span>
<span class="number">  81</span>  <span class="k2">{</span>
<span class="number">  82</span>    <a href="http://www.allegro.cc/manual/al_fclose"><span class="a">al_fclose</span></a><span class="k2">(</span>file<span class="k2">)</span><span class="k2">;</span>
<span class="number">  83</span>
<span class="number">  84</span>    created <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>
<span class="number">  85</span>    pallet.pallet.clear<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  86</span>    pallet <span class="k3">=</span> CPallet<span class="k2">(</span>c<span class="k2">)</span><span class="k2">;</span>
<span class="number">  87</span>    map <span class="k3">=</span> CMap<span class="k2">(</span>a, b<span class="k2">)</span><span class="k2">;</span>
<span class="number">  88</span>
<span class="number">  89</span>    CResourceGrabber<span class="k3">&amp;</span> rg <span class="k3">=</span> rg.getInstance<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  90</span>    map.setAllBmps<span class="k2">(</span>pallet.getBmp<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  91</span>    brush.clear<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  92</span>    brush.push_back<span class="k2">(</span>CTile<span class="k2">(</span>pallet.getBmp<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="number">  93</span>    brush<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.setX<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  94</span>    brush<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.setY<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  95</span>
<span class="number">  96</span>    brushWidth <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span>
<span class="number">  97</span>    brushHeight <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span>
<span class="number">  98</span>    brushVisible <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number">  99</span>    map.setVisible<span class="k2">(</span><span class="k1">false</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 100</span>    pallet.setVisible<span class="k2">(</span><span class="k1">false</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 101</span>    menu.setVisible<span class="k2">(</span><span class="k1">true</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 102</span>    std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"Created a "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> a<span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"X"</span><span class="k3">&lt;</span><span class="k3">&lt;</span> b <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">" Map for your amusement!\n"</span><span class="k2">;</span>
<span class="number"> 103</span>  <span class="k2">}</span>
<span class="number"> 104</span>  <span class="k1">else</span>
<span class="number"> 105</span>  <span class="k2">{</span>
<span class="number"> 106</span>    std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span><span class="s">"Could Not Open "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> c <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">" Creation Aborted!\n "</span><span class="k2">;</span>
<span class="number"> 107</span>  <span class="k2">}</span>
<span class="number"> 108</span>
<span class="number"> 109</span><span class="k2">}</span>
</div></div><p>

This is what I get from my console. Everything appears to save fine, and then when I load I get seemingly random -1.</p><p><span class="remote-thumbnail"><span class="json">{"name":"603620","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/c\/e\/ce65aed8704e8cf820a069ae5b2971f6.jpg","w":690,"h":726,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/c\/e\/ce65aed8704e8cf820a069ae5b2971f6"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/c/e/ce65aed8704e8cf820a069ae5b2971f6-240.jpg" alt="603620" width="240" height="252" /></span><br />Really not sure why this happens.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (jason perkins)</author>
		<pubDate>Tue, 15 Mar 2011 05:20:55 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">jason perkins said:</div><div class="quote"><p>
</p><div class="source-code snippet"><div class="inner"><pre>                  map.map<span class="k2">[</span> <span class="k2">(</span>h<span class="k3">+</span>hh<span class="k2">)</span><span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k3">+</span>ww <span class="k2">]</span>.setId<span class="k2">(</span>brush<span class="k2">[</span>hh<span class="k3">*</span>brushWidth<span class="k3">+</span>ww<span class="k2">]</span>.getId<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span> <span class="c">//This the problem</span>
</pre></div></div><p>
</p></div></div><p>
My guess is that you are accessing an index of brush that is out of bounds to begin with, and so you are getting a random number from getId().</p><p>Use a debugger - set a breakpoint on that line and examine brush.size(), hh, brushWidth, and ww to make sure you are accessing an index of brush that is in bounds.</p><p>The other thing, that whole second block of code looks suspicious, especially the part where you access <span class="source-code">map.map<span class="k2">[</span> <span class="k2">(</span>h<span class="k3">+</span>hh<span class="k2">)</span><span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k3">+</span>ww <span class="k2">]</span></span>. Are you sure you need to offset the index by hh and ww there? Won&#39;t that go out of bounds of your map?</p><p><b>Edit for your edit</b><br />Not sure what&#39;s going on with your saving/loading code. You could add in a check to make sure that the return value of al_fwrite32le is always 4 (bytes written).</p><p>From lookin at <span class="source-code"><a href="http://www.allegro.cc/manual/al_fread32le"><span class="a">al_fread32le</span></a></span>, -1 is also what it returns when it has reached the end of the file. Add in a check for <span class="source-code"><a href="http://www.allegro.cc/manual/al_feof"><span class="a">al_feof</span></a></span> to your loading code and make sure it&#39;s not hitting the end of the file prematurely.</p><p>Something else you can do is check the number of bytes in the file and compare it to (2*4 + 4*(map.Height()*map.Width())) to make sure the file is written correctly and can be read correctly.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Tue, 15 Mar 2011 09:29:37 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><s>In load:
You read the width and height as fwidth and fheight, but then you loop over map.getWidth() and map.getHeight(), and write into map.map[]

Between the two, I assume you should reallocate/reinit the map with these dimensions, so that getWidth() and getHeight() return the right values and the array has correct size.</s></p><p>Disregard that, I missed the <span class="source-code">create<span class="k2">(</span><span class="k2">)</span></span>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Audric)</author>
		<pubDate>Tue, 15 Mar 2011 13:03:19 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Yeah Edgar durring that block of code (that appears to be working, and I removed fromt he post). I&#39;m copying the bitmaps/id&#39;s from my brush to the map. So if I click in the bottom right of my map, it will go out of bounds, but I check for it I get no issues from that. </p><p>I&#39;m so out of Ideas at this point I&#39;m just going to wipe this file and start from scratch thanks for taking the time to check though.</p><p>Edit: This just got a whole lot weirder. I tracked down the problem exactly And it&#39;s... strange.</p><p>Everything works fine up until I set a map id to equal exactly 26, if I try to load a file with a 26 in it it&#39;ll crash, 25 works, 27 works, 254 works... but 26 fails.<br /> <br />I&#39;m just going to post the whole damn thing. There&#39;s nothing special about 26. So confused.</p><p>edit...</p><p>Well aparently it&#39;s just when I try to load a 26, The program is acting like the file ends So al_fread16be(...)When this encounters a 26 for some reason is returning as -1, and This is what&#39;s setting the rest of my map ids out of bounds</p><p>I&#39;ve tried using al_fwrite/fread32le(), as well as casting the integers I&#39;m saving to int32_t, and int16_t... nothings working.</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="number">   2</span><span class="p">#include "headers.h"</span>
<span class="number">   3</span><span class="k1">extern</span> <span class="k1">int</span> currentLayer<span class="k2">;</span>
<span class="number">   4</span>CLayer::CLayer<span class="k2">(</span><span class="k2">)</span>
<span class="number">   5</span><span class="k2">{</span>
<span class="number">   6</span>
<span class="number">   7</span>  created <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number">   8</span>  loaded <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number">   9</span>  selectRectStartX <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  10</span>  selectRectStartY <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  11</span>  selectRect <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number">  12</span>  menu <span class="k3">=</span> CMenu<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  13</span>  menu.setVisible<span class="k2">(</span><span class="k1">true</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  14</span>  brushVisible <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number">  15</span>  pallet.setVisible<span class="k2">(</span><span class="k1">false</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  16</span>  map.setVisible<span class="k2">(</span><span class="k1">false</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  17</span>
<span class="number">  18</span>
<span class="number">  19</span>
<span class="number">  20</span><span class="k2">}</span>
<span class="number">  21</span>
<span class="number">  22</span><span class="k1">void</span> CLayer::create<span class="k2">(</span><span class="k1">int</span> a, <span class="k1">int</span> b, std::string c<span class="k2">)</span>
<span class="number">  23</span><span class="k2">{</span>
<span class="number">  24</span>  <a href="http://www.allegro.cc/manual/ALLEGRO_FILE"><span class="a">ALLEGRO_FILE</span></a><span class="k3">*</span> file<span class="k2">;</span>
<span class="number">  25</span>  file <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_fopen"><span class="a">al_fopen</span></a><span class="k2">(</span>c.c_str<span class="k2">(</span><span class="k2">)</span>, <span class="s">"r"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  26</span>  <span class="k1">if</span><span class="k2">(</span>file<span class="k2">)</span>
<span class="number">  27</span>  <span class="k2">{</span>
<span class="number">  28</span>    <a href="http://www.allegro.cc/manual/al_fclose"><span class="a">al_fclose</span></a><span class="k2">(</span>file<span class="k2">)</span><span class="k2">;</span>
<span class="number">  29</span>    created <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>
<span class="number">  30</span>    pallet.pallet.clear<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  31</span>    pallet <span class="k3">=</span> CPallet<span class="k2">(</span>c<span class="k2">)</span><span class="k2">;</span>
<span class="number">  32</span>    map <span class="k3">=</span> CMap<span class="k2">(</span>a, b<span class="k2">)</span><span class="k2">;</span>
<span class="number">  33</span>
<span class="number">  34</span>    map.setAllBmps<span class="k2">(</span>pallet.getBmp<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  35</span>    brush.clear<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  36</span>    brush.push_back<span class="k2">(</span>CTile<span class="k2">(</span>pallet.getBmp<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="number">  37</span>    brush<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.setX<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  38</span>    brush<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.setY<span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  39</span>
<span class="number">  40</span>    brushWidth <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span>
<span class="number">  41</span>    brushHeight <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span>
<span class="number">  42</span>    brushVisible <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number">  43</span>    map.setVisible<span class="k2">(</span><span class="k1">false</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  44</span>    pallet.setVisible<span class="k2">(</span><span class="k1">false</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  45</span>    menu.setVisible<span class="k2">(</span><span class="k1">true</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  46</span>    std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"Created a "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> a<span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"X"</span><span class="k3">&lt;</span><span class="k3">&lt;</span> b <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">" Map for your amusement!\n"</span><span class="k2">;</span>
<span class="number">  47</span>  <span class="k2">}</span>
<span class="number">  48</span>  <span class="k1">else</span>
<span class="number">  49</span>  <span class="k2">{</span>
<span class="number">  50</span>    std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span><span class="s">"Could Not Open "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> c <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">" Creation Aborted!\n "</span><span class="k2">;</span>
<span class="number">  51</span>  <span class="k2">}</span>
<span class="number">  52</span>
<span class="number">  53</span><span class="k2">}</span>
<span class="number">  54</span>
<span class="number">  55</span><span class="k1">void</span> CLayer::save<span class="k2">(</span>std::string a<span class="k2">)</span>
<span class="number">  56</span><span class="k2">{</span>
<span class="number">  57</span>  <span class="k1">if</span> <span class="k2">(</span>created<span class="k3">=</span><span class="k3">=</span> <span class="k1">true</span><span class="k2">)</span>
<span class="number">  58</span>  <span class="k2">{</span>
<span class="number">  59</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_FILE"><span class="a">ALLEGRO_FILE</span></a><span class="k3">*</span> file<span class="k2">;</span>
<span class="number">  60</span>
<span class="number">  61</span>    file <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_fopen"><span class="a">al_fopen</span></a><span class="k2">(</span>a.c_str<span class="k2">(</span><span class="k2">)</span>, <span class="s">"w"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  62</span>    
<span class="number">  63</span>    <span class="k1">if</span><span class="k2">(</span>file<span class="k2">)</span>
<span class="number">  64</span>    <a href="http://www.allegro.cc/manual/al_fwrite16be"><span class="a">al_fwrite16be</span></a><span class="k2">(</span>file, map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  65</span>    <a href="http://www.allegro.cc/manual/al_fwrite16be"><span class="a">al_fwrite16be</span></a><span class="k2">(</span>file, map.getHeight<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  66</span>
<span class="number">  67</span>    <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> h <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> h<span class="k3">&lt;</span>map.getHeight<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> h<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number">  68</span>    <span class="k2">{</span>
<span class="number">  69</span>      <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>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> w<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number">  70</span>      <span class="k2">{</span>
<span class="number">  71</span>        <a href="http://www.allegro.cc/manual/al_fwrite16be"><span class="a">al_fwrite16be</span></a><span class="k2">(</span>file, map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getId<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  72</span>      <span class="k2">}</span>
<span class="number">  73</span>    <span class="k2">}</span>
<span class="number">  74</span>
<span class="number">  75</span>    <a href="http://www.allegro.cc/manual/al_fclose"><span class="a">al_fclose</span></a><span class="k2">(</span>file<span class="k2">)</span><span class="k2">;</span>
<span class="number">  76</span>    std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"Saved "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> a <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  77</span>  <span class="k2">}</span>
<span class="number">  78</span><span class="k2">}</span>
<span class="number">  79</span>
<span class="number">  80</span><span class="k1">void</span> CLayer::load<span class="k2">(</span>std::string a, std::string b<span class="k2">)</span>
<span class="number">  81</span><span class="k2">{</span>
<span class="number">  82</span>  <a href="http://www.allegro.cc/manual/ALLEGRO_FILE"><span class="a">ALLEGRO_FILE</span></a><span class="k3">*</span> file<span class="k2">;</span>
<span class="number">  83</span>  <a href="http://www.allegro.cc/manual/ALLEGRO_FILE"><span class="a">ALLEGRO_FILE</span></a><span class="k3">*</span> file2<span class="k2">;</span>
<span class="number">  84</span>
<span class="number">  85</span>  file <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_fopen"><span class="a">al_fopen</span></a><span class="k2">(</span>a.c_str<span class="k2">(</span><span class="k2">)</span>, <span class="s">"r"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  86</span>  file2 <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_fopen"><span class="a">al_fopen</span></a><span class="k2">(</span>b.c_str<span class="k2">(</span><span class="k2">)</span>, <span class="s">"r"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  87</span>
<span class="number">  88</span>  <span class="k1">if</span> <span class="k2">(</span>file <span class="k3">&amp;</span><span class="k3">&amp;</span> file2<span class="k2">)</span>
<span class="number">  89</span>  <span class="k2">{</span><a href="http://www.allegro.cc/manual/al_fclose"><span class="a">al_fclose</span></a><span class="k2">(</span>file2<span class="k2">)</span><span class="k2">;</span>
<span class="number">  90</span>    <span class="k2">{</span>
<span class="number">  91</span>      <span class="k1">int</span> fwidth <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  92</span>      <span class="k1">int</span> fheight <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  93</span>
<span class="number">  94</span>      fwidth <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_fread16be"><span class="a">al_fread16be</span></a><span class="k2">(</span>file<span class="k2">)</span><span class="k2">;</span>
<span class="number">  95</span>      fheight <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_fread16be"><span class="a">al_fread16be</span></a><span class="k2">(</span>file<span class="k2">)</span><span class="k2">;</span>
<span class="number">  96</span>      create<span class="k2">(</span>fwidth, fheight, b<span class="k2">)</span><span class="k2">;</span>
<span class="number">  97</span>      cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"created map with width "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> fwidth <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">" Height "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> fheight <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">" with pallet "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> b <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  98</span>
<span class="number">  99</span>      <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> h <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> h<span class="k3">&lt;</span>map.getHeight<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> h<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number"> 100</span>      <span class="k2">{</span>
<span class="number"> 101</span>        <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>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> w<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number"> 102</span>        <span class="k2">{</span>
<span class="number"> 103</span>          map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.setId<span class="k2">(</span><a href="http://www.allegro.cc/manual/al_fread16be"><span class="a">al_fread16be</span></a><span class="k2">(</span>file<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 104</span>          map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.setBmp<span class="k2">(</span>pallet.pallet<span class="k2">[</span>map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getId<span class="k2">(</span><span class="k2">)</span><span class="k2">]</span>.getBmp<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span><span class="c">//HERE if map.map[h*map.getWidth()+w].getId() is 26 the program crashes, 27 works, 244 works.</span>
<span class="number"> 105</span>        <span class="k2">}</span>
<span class="number"> 106</span>      <span class="k2">}</span>
<span class="number"> 107</span>
<span class="number"> 108</span>      <a href="http://www.allegro.cc/manual/al_fclose"><span class="a">al_fclose</span></a><span class="k2">(</span>file<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 109</span>      std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"Loaded Map:"</span><span class="k3">&lt;</span><span class="k3">&lt;</span> a <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">" With Pallet :"</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> b <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number"> 110</span>      loaded <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>
<span class="number"> 111</span>    <span class="k2">}</span>
<span class="number"> 112</span>  <span class="k2">}</span>
<span class="number"> 113</span>  <span class="k1">else</span>
<span class="number"> 114</span>    std::cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"Could Not Load "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> a <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">" Using "</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> b <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number"> 115</span><span class="k2">}</span>
<span class="number"> 116</span>
<span class="number"> 117</span>
<span class="number"> 118</span><span class="k1">void</span> CLayer::draw<span class="k2">(</span><span class="k2">)</span>
<span class="number"> 119</span><span class="k2">{</span>
<span class="number"> 120</span>  CInputManager<span class="k3">&amp;</span> im <span class="k3">=</span> im.getInstance<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 121</span>
<span class="number"> 122</span>  <span class="k1">if</span> <span class="k2">(</span>map.isVisible<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 123</span>    map.draw<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 124</span>  <span class="k1">if</span> <span class="k2">(</span>menu.isVisible<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 125</span>    menu.draw<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 126</span>  <span class="k1">if</span><span class="k2">(</span>pallet.isVisible<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 127</span>    pallet.draw<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 128</span>  <span class="k1">if</span><span class="k2">(</span>brushVisible<span class="k2">)</span>
<span class="number"> 129</span>  <span class="k2">{</span>
<span class="number"> 130</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> brush.size<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number"> 131</span>    <span class="k2">{</span>
<span class="number"> 132</span>      brush<span class="k2">[</span>i<span class="k2">]</span>.draw<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 133</span>    <span class="k2">}</span>
<span class="number"> 134</span>  <span class="k2">}</span>
<span class="number"> 135</span>  <span class="k1">if</span><span class="k2">(</span>selectRect<span class="k2">)</span>
<span class="number"> 136</span>  <span class="k2">{</span>
<span class="number"> 137</span>    <a href="http://www.allegro.cc/manual/al_draw_rectangle"><span class="a">al_draw_rectangle</span></a><span class="k2">(</span>selectRectStartX, selectRectStartY, im.getMouseX<span class="k2">(</span><span class="k2">)</span>, im.getMouseY<span class="k2">(</span><span class="k2">)</span>, <a href="http://www.allegro.cc/manual/al_map_rgb"><span class="a">al_map_rgb</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="n">4</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 138</span>  <span class="k2">}</span>
<span class="number"> 139</span><span class="k2">}</span>
<span class="number"> 140</span>
<span class="number"> 141</span><span class="k1">void</span> CLayer::getInput<span class="k2">(</span><span class="k2">)</span>
<span class="number"> 142</span><span class="k2">{</span>
<span class="number"> 143</span>  <span class="k1">if</span> <span class="k2">(</span>created <span class="k3">=</span><span class="k3">=</span> <span class="k1">true</span><span class="k2">)</span>
<span class="number"> 144</span>  <span class="k2">{</span>
<span class="number"> 145</span>    CInputManager<span class="k3">&amp;</span> im <span class="k3">=</span> im.getInstance<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 146</span>
<span class="number"> 147</span>    <span class="k1">if</span> <span class="k2">(</span>im.esc<span class="k2">(</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k3">!</span>im.oldEsc<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 148</span>    <span class="k2">{</span>
<span class="number"> 149</span>      loaded <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 150</span>      <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>menu.isVisible<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 151</span>      <span class="k2">{</span>
<span class="number"> 152</span>        menu.setVisible<span class="k2">(</span><span class="k1">true</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 153</span>        map.setVisible<span class="k2">(</span><span class="k1">false</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 154</span>        brushVisible <span class="k3">=</span><span class="k1">false</span><span class="k2">;</span>
<span class="number"> 155</span>        pallet.setVisible<span class="k2">(</span><span class="k1">false</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 156</span>      <span class="k2">}</span>
<span class="number"> 157</span>      <span class="k1">else</span>
<span class="number"> 158</span>      <span class="k2">{</span>
<span class="number"> 159</span>        menu.setVisible<span class="k2">(</span><span class="k1">false</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 160</span>        map.setVisible<span class="k2">(</span><span class="k1">true</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 161</span>        brushVisible <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>
<span class="number"> 162</span>      <span class="k2">}</span>  
<span class="number"> 163</span>    <span class="k2">}</span>
<span class="number"> 164</span>
<span class="number"> 165</span>    <span class="k1">if</span> <span class="k2">(</span>im.tab<span class="k2">(</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> im.oldTab<span class="k2">(</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k3">!</span>menu.isVisible<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 166</span>    <span class="k2">{</span>
<span class="number"> 167</span>      pallet.setVisible<span class="k2">(</span><span class="k1">true</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 168</span>      map.setVisible<span class="k2">(</span><span class="k1">true</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 169</span>      brushVisible <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 170</span>      menu.setVisible<span class="k2">(</span><span class="k1">false</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 171</span>    <span class="k2">}</span>
<span class="number"> 172</span>    <span class="k1">else</span>
<span class="number"> 173</span>    <span class="k2">{</span>
<span class="number"> 174</span>      pallet.setVisible<span class="k2">(</span><span class="k1">false</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 175</span>    <span class="k2">}</span>
<span class="number"> 176</span>
<span class="number"> 177</span>    <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>pallet.isVisible<span class="k2">(</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k3">!</span>menu.isVisible<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 178</span>    <span class="k2">{</span>
<span class="number"> 179</span>      brushVisible<span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>
<span class="number"> 180</span>    <span class="k2">}</span>
<span class="number"> 181</span>
<span class="number"> 182</span>    <span class="k1">if</span> <span class="k2">(</span>pallet.isVisible<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 183</span>    <span class="k2">{</span>
<span class="number"> 184</span>      
<span class="number"> 185</span>      <span class="k1">if</span> <span class="k2">(</span>im.rClick<span class="k2">(</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k3">!</span>im.oldRClick<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 186</span>      <span class="k2">{</span>
<span class="number"> 187</span>        <span class="c">//start drawing a rectangle to select multiple tiles</span>
<span class="number"> 188</span>        selectRect <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>
<span class="number"> 189</span>        selectRectStartX <span class="k3">=</span> im.getMouseX<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 190</span>        selectRectStartY <span class="k3">=</span> im.getMouseY<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 191</span>      <span class="k2">}</span>
<span class="number"> 192</span>
<span class="number"> 193</span>
<span class="number"> 194</span>      <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>im.rClick<span class="k2">(</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> im.oldRClick<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 195</span>      <span class="k2">{</span>
<span class="number"> 196</span>        <span class="c">//user let go of right click, they've selected the tiles they want to be coppied to brush</span>
<span class="number"> 197</span>        <span class="c">//setting this rectangle so that rectx1/recty1 is the top left</span>
<span class="number"> 198</span>        <span class="k1">if</span> <span class="k2">(</span>im.getMouseX<span class="k2">(</span><span class="k2">)</span> <span class="k3">&lt;</span><span class="k3">=</span> selectRectStartX<span class="k2">)</span>
<span class="number"> 199</span>        <span class="k2">{</span>
<span class="number"> 200</span>          rectX1 <span class="k3">=</span> im.getMouseX<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 201</span>          rectX2 <span class="k3">=</span> selectRectStartX<span class="k2">;</span>
<span class="number"> 202</span>        <span class="k2">}</span>
<span class="number"> 203</span>          
<span class="number"> 204</span>        <span class="k1">else</span>
<span class="number"> 205</span>        <span class="k2">{</span>
<span class="number"> 206</span>          rectX1 <span class="k3">=</span> selectRectStartX<span class="k2">;</span>
<span class="number"> 207</span>          rectX2 <span class="k3">=</span> im.getMouseX<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 208</span>        <span class="k2">}</span>
<span class="number"> 209</span>
<span class="number"> 210</span>        <span class="k1">if</span> <span class="k2">(</span>im.getMouseY<span class="k2">(</span><span class="k2">)</span> <span class="k3">&lt;</span><span class="k3">=</span> selectRectStartY<span class="k2">)</span>
<span class="number"> 211</span>        <span class="k2">{</span>
<span class="number"> 212</span>          rectY1 <span class="k3">=</span> im.getMouseY<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 213</span>          rectY2 <span class="k3">=</span> selectRectStartY<span class="k2">;</span>
<span class="number"> 214</span>        <span class="k2">}</span>
<span class="number"> 215</span>        <span class="k1">else</span>
<span class="number"> 216</span>        <span class="k2">{</span>
<span class="number"> 217</span>          rectY1 <span class="k3">=</span> selectRectStartY<span class="k2">;</span>
<span class="number"> 218</span>          rectY2 <span class="k3">=</span> im.getMouseY<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 219</span>        <span class="k2">}</span>
<span class="number"> 220</span>
<span class="number"> 221</span>        brush.clear<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 222</span>        <span class="c">//clear brush and add selected tiles to it.</span>
<span class="number"> 223</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> pallet.pallet.size<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number"> 224</span>        <span class="k2">{</span>
<span class="number"> 225</span>          <span class="k1">if</span> <span class="k2">(</span>pallet.pallet<span class="k2">[</span>i<span class="k2">]</span>.getX<span class="k2">(</span><span class="k2">)</span> <span class="k3">+</span> TILE_SIZE <span class="k3">&gt;</span><span class="k3">=</span> rectX1 <span class="k3">&amp;</span><span class="k3">&amp;</span> pallet.pallet<span class="k2">[</span>i<span class="k2">]</span>.getX<span class="k2">(</span><span class="k2">)</span> <span class="k3">&lt;</span><span class="k3">=</span> rectX2 <span class="k3">&amp;</span><span class="k3">&amp;</span>
<span class="number"> 226</span>            pallet.pallet<span class="k2">[</span>i<span class="k2">]</span>.getY<span class="k2">(</span><span class="k2">)</span> <span class="k3">+</span> TILE_SIZE <span class="k3">&gt;</span><span class="k3">=</span> rectY1  <span class="k3">&amp;</span><span class="k3">&amp;</span> pallet.pallet<span class="k2">[</span>i<span class="k2">]</span>.getY<span class="k2">(</span><span class="k2">)</span> <span class="k3">&lt;</span><span class="k3">=</span> rectY2<span class="k2">)</span>
<span class="number"> 227</span>          <span class="k2">{</span>
<span class="number"> 228</span>            brush.push_back<span class="k2">(</span>CTile<span class="k2">(</span>pallet.pallet<span class="k2">[</span>i<span class="k2">]</span>.getBmp<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 229</span>            
<span class="number"> 230</span>            brush<span class="k2">[</span>brush.size<span class="k2">(</span><span class="k2">)</span><span class="k3">-</span><span class="n">1</span><span class="k2">]</span>.setId<span class="k2">(</span>i<span class="k2">)</span><span class="k2">;</span><span class="c">//HERE--- If This is 26, and I copy it to my map and save it</span>
<span class="number"> 231</span>                            <span class="c">// The program crashes when I load</span>
<span class="number"> 232</span>            brush<span class="k2">[</span>brush.size<span class="k2">(</span><span class="k2">)</span><span class="k3">-</span><span class="n">1</span><span class="k2">]</span>.setX<span class="k2">(</span>pallet.pallet<span class="k2">[</span>i<span class="k2">]</span>.getX<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span>TILE_SIZE<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 233</span>            brush<span class="k2">[</span>brush.size<span class="k2">(</span><span class="k2">)</span><span class="k3">-</span><span class="n">1</span><span class="k2">]</span>.setY<span class="k2">(</span>pallet.pallet<span class="k2">[</span>i<span class="k2">]</span>.getY<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span>TILE_SIZE<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 234</span>                  
<span class="number"> 235</span>          <span class="k2">}</span>        
<span class="number"> 236</span>        <span class="k2">}</span>
<span class="number"> 237</span>
<span class="number"> 238</span>        <span class="k1">if</span> <span class="k2">(</span>brush.size<span class="k2">(</span><span class="k2">)</span> <span class="k3">&lt;</span><span class="n">1</span> <span class="k2">)</span>
<span class="number"> 239</span>          <span class="c">//if for some reason brush size == 0, fill it with something</span>
<span class="number"> 240</span>        <span class="k2">{</span>
<span class="number"> 241</span>          brush.push_back<span class="k2">(</span>CTile<span class="k2">(</span>pallet.pallet<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.getBmp<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 242</span>        <span class="k2">}</span>
<span class="number"> 243</span>
<span class="number"> 244</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> brush.size<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> i<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number"> 245</span>        <span class="k2">{</span>
<span class="number"> 246</span>          <span class="c">// move the brush to the top left of the screen</span>
<span class="number"> 247</span>          <span class="k1">if</span> <span class="k2">(</span>i <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span>
<span class="number"> 248</span>          <span class="k2">{</span>
<span class="number"> 249</span>            moveThisFarX <span class="k3">=</span> brush<span class="k2">[</span>i<span class="k2">]</span>.getX<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span>TILE_SIZE<span class="k2">;</span>
<span class="number"> 250</span>            moveThisFarY <span class="k3">=</span> brush<span class="k2">[</span>i<span class="k2">]</span>.getY<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span>TILE_SIZE<span class="k2">;</span>
<span class="number"> 251</span>          <span class="k2">}</span>
<span class="number"> 252</span>          brush<span class="k2">[</span>i<span class="k2">]</span>.setX<span class="k2">(</span>brush<span class="k2">[</span>i<span class="k2">]</span>.getX<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span>TILE_SIZE <span class="k3">-</span> moveThisFarX<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 253</span>          brush<span class="k2">[</span>i<span class="k2">]</span>.setY<span class="k2">(</span>brush<span class="k2">[</span>i<span class="k2">]</span>.getY<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span>TILE_SIZE <span class="k3">-</span> moveThisFarY<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 254</span>        <span class="k2">}</span>
<span class="number"> 255</span>
<span class="number"> 256</span>        brushWidth <span class="k3">=</span> <span class="k2">(</span>brush<span class="k2">[</span>brush.size<span class="k2">(</span><span class="k2">)</span><span class="k3">-</span><span class="n">1</span><span class="k2">]</span>.getX<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span>TILE_SIZE<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 257</span>        brushHeight <span class="k3">=</span> <span class="k2">(</span>brush<span class="k2">[</span>brush.size<span class="k2">(</span><span class="k2">)</span><span class="k3">-</span><span class="n">1</span><span class="k2">]</span>.getY<span class="k2">(</span><span class="k2">)</span><span class="k3">/</span>TILE_SIZE<span class="k3">+</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 258</span>        selectRect <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 259</span>      <span class="k2">}</span>
<span class="number"> 260</span>    <span class="k2">}</span>
<span class="number"> 261</span>
<span class="number"> 262</span>    <span class="k1">if</span> <span class="k2">(</span>map.isVisible<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 263</span>    <span class="k2">{</span>
<span class="number"> 264</span>      <span class="k1">if</span> <span class="k2">(</span>im.lClick<span class="k2">(</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k3">!</span> im.tab<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 265</span>      <span class="k2">{</span>
<span class="number"> 266</span>        <span class="c">//set an area of the map to equal what brush is. </span>
<span class="number"> 267</span>
<span class="number"> 268</span>        <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> h <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> h<span class="k3">&lt;</span>map.getHeight<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> h<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number"> 269</span>        <span class="k2">{</span>
<span class="number"> 270</span>          <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>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> w<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number"> 271</span>
<span class="number"> 272</span>          <span class="k2">{</span>
<span class="number"> 273</span>          
<span class="number"> 274</span>            <span class="k1">if</span> <span class="k2">(</span>map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getX<span class="k2">(</span><span class="k2">)</span> <span class="k3">&lt;</span> im.getMouseX<span class="k2">(</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getX<span class="k2">(</span><span class="k2">)</span> <span class="k3">+</span> TILE_SIZE <span class="k3">&gt;</span> im.getMouseX<span class="k2">(</span><span class="k2">)</span>  <span class="k3">&amp;</span><span class="k3">&amp;</span>
<span class="number"> 275</span>              map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getY<span class="k2">(</span><span class="k2">)</span> <span class="k3">&lt;</span> im.getMouseY<span class="k2">(</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> map.map<span class="k2">[</span>h<span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getY<span class="k2">(</span><span class="k2">)</span> <span class="k3">+</span> TILE_SIZE <span class="k3">&gt;</span> im.getMouseY<span class="k2">(</span><span class="k2">)</span> <span class="k2">)</span>
<span class="number"> 276</span>            <span class="k2">{</span>
<span class="number"> 277</span>              
<span class="number"> 278</span>              <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> hh <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> hh<span class="k3">&lt;</span>brushHeight<span class="k2">;</span> hh<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number"> 279</span>              <span class="k2">{</span>
<span class="number"> 280</span>                <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> ww <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> ww <span class="k3">&lt;</span> brushWidth<span class="k2">;</span> ww<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number"> 281</span>                <span class="k2">{</span>        
<span class="number"> 282</span>                  <span class="k1">if</span> <span class="k2">(</span><span class="k2">(</span>h<span class="k3">+</span>hh<span class="k2">)</span><span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k3">+</span>ww <span class="k3">&lt;</span> map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">*</span>map.getHeight<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 283</span>                  <span class="k2">{</span>
<span class="number"> 284</span>
<span class="number"> 285</span>                    map.map<span class="k2">[</span> <span class="k2">(</span>h<span class="k3">+</span>hh<span class="k2">)</span><span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k3">+</span>ww <span class="k2">]</span>.setBmp<span class="k2">(</span>brush<span class="k2">[</span>hh<span class="k3">*</span>brushWidth<span class="k3">+</span>ww<span class="k2">]</span>.getBmp<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 286</span>
<span class="number"> 287</span>                    <span class="c">//if (brush[hh*brushWidth+ww].getId() != 26)//##### THIS If the Id is anything</span>
<span class="number"> 288</span>                                          <span class="c">//other Than 26, saving/loading works as intended</span>
<span class="number"> 289</span>                    map.map<span class="k2">[</span> <span class="k2">(</span>h<span class="k3">+</span>hh<span class="k2">)</span><span class="k3">*</span>map.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k3">+</span>ww <span class="k2">]</span>.setId<span class="k2">(</span>brush<span class="k2">[</span>hh<span class="k3">*</span>brushWidth<span class="k3">+</span>ww<span class="k2">]</span>.getId<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 290</span>                  <span class="k2">}</span>
<span class="number"> 291</span>                <span class="k2">}</span>          
<span class="number"> 292</span>
<span class="number"> 293</span>              <span class="k2">}</span>
<span class="number"> 294</span>              
<span class="number"> 295</span>            <span class="k2">}</span>  
<span class="number"> 296</span>          <span class="k2">}</span>
<span class="number"> 297</span>        <span class="k2">}</span>
<span class="number"> 298</span>      <span class="k2">}</span>
<span class="number"> 299</span>
<span class="number"> 300</span>      <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>im.tab<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 301</span>      <span class="k2">{</span>
<span class="number"> 302</span>        map.getInput<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 303</span>      <span class="k2">}</span>
<span class="number"> 304</span>    <span class="k2">}</span>
<span class="number"> 305</span>
<span class="number"> 306</span>    <span class="k1">if</span> <span class="k2">(</span>pallet.isVisible<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 307</span>    <span class="k2">{</span>
<span class="number"> 308</span>      <span class="k1">if</span> <span class="k2">(</span>im.lClick<span class="k2">(</span><span class="k2">)</span> <span class="k2">)</span>
<span class="number"> 309</span>      <span class="k2">{</span>
<span class="number"> 310</span>        <span class="c">//if left clicking pallet, set brush's id to equal that pallet Id</span>
<span class="number"> 311</span>
<span class="number"> 312</span>        <span class="k1">for</span> <span class="k2">(</span><span class="k1">int</span> h <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span> h<span class="k3">&lt;</span>pallet.getHeight<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> h<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number"> 313</span>        <span class="k2">{</span>
<span class="number"> 314</span>          <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>pallet.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> w<span class="k3">+</span><span class="k3">+</span><span class="k2">)</span>
<span class="number"> 315</span>          <span class="k2">{</span>
<span class="number"> 316</span>            <span class="k1">if</span> <span class="k2">(</span>pallet.pallet<span class="k2">[</span>h<span class="k3">*</span>pallet.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getX<span class="k2">(</span><span class="k2">)</span> <span class="k3">&lt;</span> im.getMouseX<span class="k2">(</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> pallet.pallet<span class="k2">[</span>h<span class="k3">*</span>pallet.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getX<span class="k2">(</span><span class="k2">)</span> <span class="k3">+</span> TILE_SIZE <span class="k3">&gt;</span>im.getMouseX<span class="k2">(</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span>
<span class="number"> 317</span>            pallet.pallet<span class="k2">[</span>h<span class="k3">*</span>pallet.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getY<span class="k2">(</span><span class="k2">)</span> <span class="k3">&lt;</span> im.getMouseY<span class="k2">(</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> pallet.pallet<span class="k2">[</span>h<span class="k3">*</span>pallet.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getY<span class="k2">(</span><span class="k2">)</span> <span class="k3">+</span> TILE_SIZE <span class="k3">&gt;</span>im.getMouseY<span class="k2">(</span><span class="k2">)</span> <span class="k2">)</span>
<span class="number"> 318</span>            <span class="k2">{</span>
<span class="number"> 319</span>              brush.clear<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 320</span>              brush.push_back<span class="k2">(</span>CTile<span class="k2">(</span>pallet.pallet<span class="k2">[</span>h<span class="k3">*</span>pallet.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">]</span>.getBmp<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 321</span>              brush<span class="k2">[</span>brush.size<span class="k2">(</span><span class="k2">)</span><span class="k3">-</span><span class="n">1</span><span class="k2">]</span>.setId<span class="k2">(</span>h<span class="k3">*</span>pallet.getWidth<span class="k2">(</span><span class="k2">)</span><span class="k3">+</span>w<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 322</span>              brushWidth <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span>
<span class="number"> 323</span>              brushHeight <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span>
<span class="number"> 324</span>            <span class="k2">}</span>
<span class="number"> 325</span>
<span class="number"> 326</span>          <span class="k2">}</span>
<span class="number"> 327</span>        <span class="k2">}</span>
<span class="number"> 328</span>      <span class="k2">}</span>
<span class="number"> 329</span>      pallet.getInput<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 330</span>    <span class="k2">}</span>
<span class="number"> 331</span>    
<span class="number"> 332</span>  <span class="k2">}</span>
<span class="number"> 333</span>  <span class="k1">if</span> <span class="k2">(</span>menu.isVisible<span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
<span class="number"> 334</span>  <span class="k2">{</span>
<span class="number"> 335</span>    menu.getInput<span class="k2">(</span>currentLayer<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 336</span>  <span class="k2">}</span>
<span class="number"> 337</span><span class="k2">}</span>
</div></div><p> </p><p>Edit:: problem Solved in another thread, thanks guys!!
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (jason perkins)</author>
		<pubDate>Tue, 15 Mar 2011 15:26:36 +0000</pubDate>
	</item>
</rss>
