<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Player class not recognized</title>
		<link>http://www.allegro.cc/forums/view/615258</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Sun, 05 Apr 2015 10:58:01 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Here are my errors:</p><p>1&gt;------ Build started: Project: Dem Bones, Configuration: Release Win32 ------<br />1&gt;  skeleton.cpp<br />1&gt;..\..\shell\shell\skeleton.cpp(45): error C2065: &#39;Player&#39; : undeclared identifier<br />1&gt;..\..\shell\shell\skeleton.cpp(45): error C2146: syntax error : missing &#39;;&#39; before identifier &#39;player&#39;<br />1&gt;..\..\shell\shell\skeleton.cpp(45): error C2065: &#39;player&#39; : undeclared identifier<br />1&gt;  player.cpp<br />========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========</p><p>Here&#39;s skeleton.cpp:</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number">   1</span> <span class="p">#include&lt;allegro5/allegro.h&gt;</span>
<span class="number">   2</span>   <span class="p">#include&lt;allegro5/allegro_primitives.h&gt;</span>
<span class="number">   3</span>   <span class="p">#include&lt;allegro5/allegro_image.h&gt;</span>
<span class="number">   4</span>   <span class="p">#include&lt;allegro5/allegro_audio.h&gt;</span>
<span class="number">   5</span>   <span class="p">#include&lt;allegro5/allegro_acodec.h&gt;</span>
<span class="number">   6</span>   <span class="p">#include&lt;iostream&gt;</span>
<span class="number">   7</span>  <span class="p">#include&lt;fstream&gt;</span>
<span class="number">   8</span><span class="p">#include"entity.h"  </span>
<span class="number">   9</span><span class="p">#include"player.h"</span>
<span class="number">  10</span><span class="p">#include"globals.h"</span>
<span class="number">  11</span>   <span class="k1">using</span> <span class="k1">namespace</span> std<span class="k2">;</span>
<span class="number">  12</span>  
<span class="number">  13</span>   <span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span>
<span class="number">  14</span>   <span class="k2">{</span>
<span class="number">  15</span>    <span class="k1">float</span> gameTime <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  16</span>    <span class="k1">int</span> frames <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  17</span>    <span class="k1">int</span> gameFPS <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  18</span>    <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/al_init"><span class="a">al_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span>
<span class="number">  19</span>      cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"Couldn't initialize Allegro."</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> cout<span class="k2">;</span>
<span class="number">  20</span>    <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/al_install_joystick"><span class="a">al_install_joystick</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span>
<span class="number">  21</span>      cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"Couldn't install joystick."</span> <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_init_image_addon"><span class="a">al_init_image_addon</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  23</span>    <a href="http://www.allegro.cc/manual/al_init_primitives_addon"><span class="a">al_init_primitives_addon</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  24</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_DISPLAY"><span class="a">ALLEGRO_DISPLAY</span></a> <span class="k3">*</span>display <span class="k3">=</span> NULL<span class="k2">;</span>
<span class="number">  25</span>    display <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_create_display"><span class="a">al_create_display</span></a><span class="k2">(</span><span class="n">1280</span>,<span class="n">720</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  26</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_BITMAP"><span class="a">ALLEGRO_BITMAP</span></a><span class="k3">*</span> bkgd<span class="k2">;</span>
<span class="number">  27</span>  bkgd <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_load_bitmap"><span class="a">al_load_bitmap</span></a><span class="k2">(</span><span class="s">"bkgd.pcx"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  28</span>  <a href="http://www.allegro.cc/manual/ALLEGRO_EVENT_QUEUE"><span class="a">ALLEGRO_EVENT_QUEUE</span></a> <span class="k3">*</span>event_queue <span class="k3">=</span> NULL<span class="k2">;</span>
<span class="number">  29</span>    event_queue <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_create_event_queue"><span class="a">al_create_event_queue</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  30</span>    <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>event_queue<span class="k2">)</span>
<span class="number">  31</span>      cout <span class="k3">&lt;</span><span class="k3">&lt;</span> <span class="s">"al_create_event_queue failed."</span> <span class="k3">&lt;</span><span class="k3">&lt;</span> endl<span class="k2">;</span>
<span class="number">  32</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_TIMER"><span class="a">ALLEGRO_TIMER</span></a> <span class="k3">*</span>timer<span class="k2">;</span>
<span class="number">  33</span>    timer <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_create_timer"><span class="a">al_create_timer</span></a><span class="k2">(</span><span class="n">1</span>.<span class="n">0</span><span class="k3">/</span><span class="n">60</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  34</span>    <a href="http://www.allegro.cc/manual/al_register_event_source"><span class="a">al_register_event_source</span></a><span class="k2">(</span>event_queue, <a href="http://www.allegro.cc/manual/al_get_timer_event_source"><span class="a">al_get_timer_event_source</span></a><span class="k2">(</span>timer<span class="k2">)</span><span class="k2">)</span><span class="k2">;</span> 
<span class="number">  35</span>    gameTime <span class="k3">=</span> al_current_time<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  36</span>    <a href="http://www.allegro.cc/manual/al_register_event_source"><span class="a">al_register_event_source</span></a><span class="k2">(</span>event_queue, <a href="http://www.allegro.cc/manual/al_get_joystick_event_source"><span class="a">al_get_joystick_event_source</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  37</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_JOYSTICK"><span class="a">ALLEGRO_JOYSTICK</span></a><span class="k3">*</span> <a href="http://www.allegro.cc/manual/joy"><span class="a">joy</span></a> <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_get_joystick"><span class="a">al_get_joystick</span></a><span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  38</span>    <a href="http://www.allegro.cc/manual/ALLEGRO_JOYSTICK_STATE"><span class="a">ALLEGRO_JOYSTICK_STATE</span></a> jst<span class="k2">;</span>
<span class="number">  39</span>    <span class="c">//~ buttons button;</span>
<span class="number">  40</span>    direction dir <span class="k3">=</span> RIGHT<span class="k2">;</span>
<span class="number">  41</span>  <span class="k1">bool</span> alive <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>
<span class="number">  42</span>  <span class="k1">bool</span> render<span class="k3">=</span><span class="k1">false</span><span class="k2">;</span>
<span class="number">  43</span>  <a href="http://www.allegro.cc/manual/al_start_timer"><span class="a">al_start_timer</span></a><span class="k2">(</span>timer<span class="k2">)</span><span class="k2">;</span>
<span class="number">  44</span>    <span class="k1">int</span> x <span class="k3">=</span> <span class="n">0</span>, y <span class="k3">=</span> <span class="k3">-</span><span class="n">720</span><span class="k2">;</span>
<span class="number">  45</span>  Player player<span class="k2">;</span>
<span class="number">  46</span>  <span class="k1">while</span><span class="k2">(</span>alive<span class="k2">)</span>
<span class="number">  47</span>    <span class="k2">{</span>
<span class="number">  48</span>      <a href="http://www.allegro.cc/manual/ALLEGRO_EVENT"><span class="a">ALLEGRO_EVENT</span></a> ev<span class="k2">;</span>
<span class="number">  49</span>      <a href="http://www.allegro.cc/manual/al_wait_for_event"><span class="a">al_wait_for_event</span></a><span class="k2">(</span>event_queue, <span class="k3">&amp;</span>ev<span class="k2">)</span><span class="k2">;</span>
<span class="number">  50</span>      <a href="http://www.allegro.cc/manual/al_get_joystick_state"><span class="a">al_get_joystick_state</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/joy"><span class="a">joy</span></a>, <span class="k3">&amp;</span>jst<span class="k2">)</span><span class="k2">;</span>
<span class="number">  51</span>      <span class="k1">if</span> <span class="k2">(</span>ev.type <span class="k3">=</span><span class="k3">=</span> ALLEGRO_EVENT_JOYSTICK_AXIS<span class="k2">)</span>
<span class="number">  52</span>      <span class="k2">{</span>
<span class="number">  53</span>        <span class="k1">if</span> <span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">2</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">2</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span><span class="k2">)</span> <span class="k3">|</span><span class="k3">|</span> <span class="k2">(</span><span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span><span class="k2">)</span> <span class="k3">|</span><span class="k3">|</span> <span class="k2">(</span><span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">3</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span>
<span class="number">  54</span>          dir <span class="k3">=</span> NONE<span class="k2">;</span>
<span class="number">  55</span>        <span class="k1">if</span> <span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">2</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">2</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span><span class="k2">)</span> <span class="k3">|</span><span class="k3">|</span> <span class="k2">(</span><span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span><span class="k2">)</span> <span class="k3">|</span><span class="k3">|</span> <span class="k2">(</span><span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">3</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">1</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span>
<span class="number">  56</span>          dir <span class="k3">=</span> RIGHT<span class="k2">;</span>
<span class="number">  57</span>        <span class="k1">if</span> <span class="k2">(</span><span class="k2">(</span><span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">2</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="k3">-</span><span class="n">1</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">2</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span><span class="k2">)</span> <span class="k3">|</span><span class="k3">|</span> <span class="k2">(</span><span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="k3">-</span><span class="n">1</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">1</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span><span class="k2">)</span> <span class="k3">|</span><span class="k3">|</span> <span class="k2">(</span><span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">3</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">0</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="k3">-</span><span class="n">1</span><span class="k2">)</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <span class="k2">(</span>jst.stick<span class="k2">[</span><span class="n">0</span><span class="k2">]</span>.axis<span class="k2">[</span><span class="n">1</span><span class="k2">]</span> <span class="k3">=</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span>
<span class="number">  58</span>          dir <span class="k3">=</span> LEFT<span class="k2">;</span>
<span class="number">  59</span>      <span class="k2">}</span>
<span class="number">  60</span>      <span class="c">//~ if (ev.type == ALLEGRO_EVENT_JOYSTICK_BUTTON_DOWN)</span>
<span class="number">  61</span>        <span class="c">//~ if (jst.button[9])</span>
<span class="number">  62</span>          <span class="c">//~ button = NINE;</span>
<span class="number">  63</span>  <span class="c">//update</span>
<span class="number">  64</span>      <span class="k1">else</span> <span class="k1">if</span> <span class="k2">(</span>ev.type <span class="k3">=</span><span class="k3">=</span> ALLEGRO_EVENT_TIMER<span class="k2">)</span>
<span class="number">  65</span>      <span class="k2">{</span>
<span class="number">  66</span>        render <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>
<span class="number">  67</span>    
<span class="number">  68</span>
<span class="number">  69</span>    <span class="k1">if</span> <span class="k2">(</span>dir <span class="k3">=</span><span class="k3">=</span> LEFT<span class="k2">)</span>
<span class="number">  70</span>    <span class="k2">{</span>
<span class="number">  71</span>  
<span class="number">  72</span>    <span class="k2">}</span>
<span class="number">  73</span>    <span class="k1">if</span> <span class="k2">(</span>dir <span class="k3">=</span><span class="k3">=</span> RIGHT<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="k2">}</span>
<span class="number">  77</span>    
<span class="number">  78</span>        <span class="k1">if</span> <span class="k2">(</span>al_current_time<span class="k2">(</span><span class="k2">)</span> <span class="k3">-</span> gameTime <span class="k3">&gt;</span><span class="k3">=</span> <span class="n">1</span><span class="k2">)</span>
<span class="number">  79</span>        <span class="k2">{</span>
<span class="number">  80</span>          gameTime <span class="k3">=</span> al_current_time<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  81</span>          gameFPS <span class="k3">=</span> frames<span class="k2">;</span>
<span class="number">  82</span>          frames <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number">  83</span>        <span class="k2">}</span>
<span class="number">  84</span>    <span class="k2">}</span>
<span class="number">  85</span>
<span class="number">  86</span>  <span class="c">//render</span>
<span class="number">  87</span>      <span class="k1">if</span> <span class="k2">(</span>render <span class="k3">&amp;</span><span class="k3">&amp;</span> <a href="http://www.allegro.cc/manual/al_is_event_queue_empty"><span class="a">al_is_event_queue_empty</span></a><span class="k2">(</span>event_queue<span class="k2">)</span><span class="k2">)</span>
<span class="number">  88</span>      <span class="k2">{</span>
<span class="number">  89</span>        <span class="c">//~ al_set_target_bitmap(al_get_backbuffer(display));</span>
<span class="number">  90</span>    
<span class="number">  91</span>      <a href="http://www.allegro.cc/manual/al_clear_to_color"><span class="a">al_clear_to_color</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/al_map_rgb_f"><span class="a">al_map_rgb_f</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  92</span>    <a href="http://www.allegro.cc/manual/al_draw_bitmap"><span class="a">al_draw_bitmap</span></a><span class="k2">(</span>bkgd, x, y, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  93</span>    <a href="http://www.allegro.cc/manual/al_flip_display"><span class="a">al_flip_display</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  94</span>    
<span class="number">  95</span>  
<span class="number">  96</span>      <span class="k2">}</span>
<span class="number">  97</span>   
<span class="number">  98</span>    <span class="k1">if</span> <span class="k2">(</span>jst.button<span class="k2">[</span><span class="n">9</span><span class="k2">]</span><span class="k2">)</span>
<span class="number">  99</span>        alive <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 100</span>    <span class="k2">}</span>
<span class="number"> 101</span>    <span class="c">//~ al_destroy_bitmap(image);</span>
<span class="number"> 102</span>    <a href="http://www.allegro.cc/manual/al_destroy_timer"><span class="a">al_destroy_timer</span></a><span class="k2">(</span>timer<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 103</span>    <a href="http://www.allegro.cc/manual/al_destroy_event_queue"><span class="a">al_destroy_event_queue</span></a><span class="k2">(</span>event_queue<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 104</span>    <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 105</span>   <span class="k2">}</span>
</div></div><p>

Here&#39;s player.cpp:</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number">  1</span><span class="p">#include "entity.h"</span>
<span class="number">  2</span><span class="p">#include"player.h"</span>
<span class="number">  3</span><span class="p">#include&lt;allegro5\allegro5.h&gt;</span>
<span class="number">  4</span>
<span class="number">  5</span><span class="k1">void</span> Player::Initialize<span class="k2">(</span><span class="k1">int</span> x, <span class="k1">int</span> y, <span class="k1">int</span> velX, <span class="k1">int</span> velY, <a href="http://www.allegro.cc/manual/ALLEGRO_BITMAP"><span class="a">ALLEGRO_BITMAP</span></a><span class="k3">*</span> image<span class="k2">)</span>
<span class="number">  6</span><span class="k2">{</span>
<span class="number">  7</span>  mX <span class="k3">=</span> x<span class="k2">;</span>
<span class="number">  8</span>  mY <span class="k3">=</span> y<span class="k2">;</span>
<span class="number">  9</span>  mVelX <span class="k3">=</span> velX<span class="k2">;</span>
<span class="number"> 10</span>  mVelY <span class="k3">=</span> velY<span class="k2">;</span>
<span class="number"> 11</span>  mImage <span class="k3">=</span> image<span class="k2">;</span>
<span class="number"> 12</span>  idle <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>
<span class="number"> 13</span>  dying <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 14</span>  injured <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 15</span>  jumping <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 16</span>  falling <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 17</span>  shooting <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 18</span>  idleForward <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>
<span class="number"> 19</span>  tint <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 20</span>  flipped <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 21</span>  r <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span>
<span class="number"> 22</span>  g <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 23</span>  b <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 24</span>  transparency <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 25</span>  frame <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 26</span>  count <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 27</span><span class="k2">}</span>
<span class="number"> 28</span>
<span class="number"> 29</span><span class="k1">void</span> Player::Update<span class="k2">(</span><span class="k2">)</span>
<span class="number"> 30</span><span class="k2">{</span>
<span class="number"> 31</span>  <span class="k1">if</span> <span class="k2">(</span>idle<span class="k2">)</span>
<span class="number"> 32</span>  <span class="k2">{</span>
<span class="number"> 33</span>    <span class="k1">if</span> <span class="k2">(</span>count <span class="k3">=</span><span class="k3">=</span> <span class="n">5</span><span class="k2">)</span>
<span class="number"> 34</span>    <span class="k2">{</span>  
<span class="number"> 35</span>      <span class="k1">if</span> <span class="k2">(</span>idleForward<span class="k2">)</span>
<span class="number"> 36</span>      <span class="k2">{</span>
<span class="number"> 37</span>        <span class="k1">if</span> <span class="k2">(</span>frame <span class="k3">=</span><span class="k3">=</span> <span class="n">2</span><span class="k2">)</span>
<span class="number"> 38</span>        <span class="k2">{</span>
<span class="number"> 39</span>          frame--<span class="k2">;</span>
<span class="number"> 40</span>          count <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 41</span>          idleForward <span class="k3">=</span> <span class="k1">false</span><span class="k2">;</span>
<span class="number"> 42</span>        <span class="k2">}</span>
<span class="number"> 43</span>        <span class="k1">else</span>
<span class="number"> 44</span>        <span class="k2">{</span>
<span class="number"> 45</span>          frame<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>
<span class="number"> 46</span>          count <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 47</span>        <span class="k2">}</span>
<span class="number"> 48</span>      <span class="k2">}</span>
<span class="number"> 49</span>      <span class="k1">else</span>
<span class="number"> 50</span>      <span class="k2">{</span>
<span class="number"> 51</span>        <span class="k1">if</span> <span class="k2">(</span>frame <span class="k3">=</span> <span class="n">0</span><span class="k2">)</span>
<span class="number"> 52</span>        <span class="k2">{</span>
<span class="number"> 53</span>          frame<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>
<span class="number"> 54</span>          count <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 55</span>          idleForward <span class="k3">=</span> <span class="k1">true</span><span class="k2">;</span>
<span class="number"> 56</span>        <span class="k2">}</span>
<span class="number"> 57</span>        <span class="k1">else</span>
<span class="number"> 58</span>        <span class="k2">{</span>
<span class="number"> 59</span>          frame--<span class="k2">;</span>
<span class="number"> 60</span>          count <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 61</span>        <span class="k2">}</span>
<span class="number"> 62</span>      <span class="k2">}</span>
<span class="number"> 63</span>    <span class="k2">}</span>
<span class="number"> 64</span>  count<span class="k3">+</span><span class="k3">+</span><span class="k2">;</span>
<span class="number"> 65</span>  <span class="k2">}</span>
<span class="number"> 66</span>
<span class="number"> 67</span><span class="k2">}</span>
<span class="number"> 68</span>
<span class="number"> 69</span><span class="k1">void</span> Player::Render<span class="k2">(</span><span class="k2">)</span>
<span class="number"> 70</span><span class="k2">{</span>
<span class="number"> 71</span>  <span class="k1">if</span> <span class="k2">(</span>tint<span class="k2">)</span>
<span class="number"> 72</span>    <span class="k1">if</span> <span class="k2">(</span>flipped<span class="k2">)</span>
<span class="number"> 73</span>      <a href="http://www.allegro.cc/manual/al_draw_tinted_bitmap_region"><span class="a">al_draw_tinted_bitmap_region</span></a><span class="k2">(</span>mImage, <a href="http://www.allegro.cc/manual/al_map_rgba_f"><span class="a">al_map_rgba_f</span></a><span class="k2">(</span>r, g, b, transparency<span class="k2">)</span>, <span class="k2">(</span>frame <span class="k3">*</span> <span class="n">256</span><span class="k2">)</span>, <span class="n">0</span>, <span class="n">256</span>, <span class="n">256</span>, mX, mY, ALLEGRO_FLIP_HORIZONTAL<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 74</span>    <span class="k1">else</span>
<span class="number"> 75</span>      <a href="http://www.allegro.cc/manual/al_draw_tinted_bitmap_region"><span class="a">al_draw_tinted_bitmap_region</span></a><span class="k2">(</span>mImage, <a href="http://www.allegro.cc/manual/al_map_rgba_f"><span class="a">al_map_rgba_f</span></a><span class="k2">(</span>r, g, b, transparency<span class="k2">)</span>, <span class="k2">(</span>frame <span class="k3">*</span> <span class="n">256</span><span class="k2">)</span>, <span class="n">0</span>, <span class="n">256</span>, <span class="n">256</span>, mX, mY, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 76</span>  <span class="k1">else</span>
<span class="number"> 77</span>    <span class="k1">if</span> <span class="k2">(</span>flipped<span class="k2">)</span>
<span class="number"> 78</span>      <a href="http://www.allegro.cc/manual/al_draw_bitmap_region"><span class="a">al_draw_bitmap_region</span></a><span class="k2">(</span>mImage, <span class="k2">(</span>frame <span class="k3">*</span> <span class="n">256</span><span class="k2">)</span>, <span class="n">0</span>, <span class="n">256</span>, <span class="n">256</span>, mX, mY, ALLEGRO_FLIP_HORIZONTAL<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 79</span>    <span class="k1">else</span>
<span class="number"> 80</span>      <a href="http://www.allegro.cc/manual/al_draw_bitmap_region"><span class="a">al_draw_bitmap_region</span></a><span class="k2">(</span>mImage, <span class="k2">(</span>frame <span class="k3">*</span> <span class="n">256</span><span class="k2">)</span>, <span class="n">0</span>, <span class="n">256</span>, <span class="n">256</span>, mX, mY, <span class="n">0</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 81</span><span class="k2">}</span>
</div></div><p>

What is it I&#39;m missing here? <img src="http://www.allegro.cc/forums/smileys/sad.gif" alt=":(" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (agonvs)</author>
		<pubDate>Sun, 05 Apr 2015 07:14:38 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Could you post player.h your error relates to C++ not recognizing Player class, so odds are it did not compile correctly (header).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (jmasterx)</author>
		<pubDate>Sun, 05 Apr 2015 07:31:12 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Sure. Here&#39;s player.h:</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number">  1</span><span class="p">#pragma once</span>
<span class="number">  2</span><span class="p">#include "entity.h"</span>
<span class="number">  3</span><span class="p">#include&lt;allegro5\allegro.h&gt;</span>
<span class="number">  4</span>
<span class="number">  5</span><span class="k1">class</span> Player: <span class="k1">public</span> Entity
<span class="number">  6</span><span class="k2">{</span>
<span class="number">  7</span>private:
<span class="number">  8</span>  <span class="k1">bool</span> idle, dying, injured, jumping, falling, shooting, idleForward, tint, flipped<span class="k2">;</span>
<span class="number">  9</span>  <span class="k1">float</span> r, g, b, transparency<span class="k2">;</span>
<span class="number"> 10</span>  <span class="k1">int</span> frame, count, mX, mY, mVelX, mVelY, mWidth, mHeight<span class="k2">;</span>
<span class="number"> 11</span>  <a href="http://www.allegro.cc/manual/ALLEGRO_BITMAP"><span class="a">ALLEGRO_BITMAP</span></a><span class="k3">*</span> mImage<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">;</span>
<span class="number"> 12</span>
<span class="number"> 13</span>public:
<span class="number"> 14</span>  <span class="k1">void</span> Initialize<span class="k2">(</span><span class="k1">int</span> x, <span class="k1">int</span> y, <span class="k1">int</span> velX, <span class="k1">int</span> velY, <a href="http://www.allegro.cc/manual/ALLEGRO_BITMAP"><span class="a">ALLEGRO_BITMAP</span></a><span class="k3">*</span> image<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 15</span>  <span class="k1">void</span> Update<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 16</span>  <span class="k1">void</span> Render<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 17</span>  <span class="k1">bool</span> collide<span class="k2">(</span><span class="k1">int</span> collideX, <span class="k1">int</span> collideY, <span class="k1">int</span> width, <span class="k1">int</span> height<span class="k2">)</span><span class="k2">;</span>
<span class="number"> 18</span>  <span class="k1">int</span> getVelX<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> mVelX<span class="k2">;</span><span class="k2">}</span>
<span class="number"> 19</span>  <span class="k1">int</span> getVelY<span class="k2">(</span><span class="k2">)</span><span class="k2">{</span><span class="k1">return</span> mVelY<span class="k2">;</span><span class="k2">}</span>
<span class="number"> 20</span><span class="k2">}</span><span class="k2">;</span>
</div></div><p>

Here&#39;s entity.h:</p><div class="source-code snippet"><div class="inner"><pre><span class="p">#pragma once</span>
<span class="p">#include&lt;iostream&gt;</span>

<span class="k1">class</span> Entity
<span class="k2">{</span>
public:
  <span class="k1">virtual</span> <span class="k1">void</span> Initialize<span class="k2">(</span><span class="k2">)</span> <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
  <span class="k1">virtual</span> <span class="k1">void</span> Update<span class="k2">(</span><span class="k2">)</span> <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
  <span class="k1">virtual</span> <span class="k1">void</span> Render<span class="k2">(</span><span class="k2">)</span> <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="k2">}</span><span class="k2">;</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (agonvs)</author>
		<pubDate>Sun, 05 Apr 2015 08:00:38 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I don&#39;t know if it makes a difference in this case but could you try adding virtual to those 3 methods in Player?
</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">virtual</span> <span class="k1">void</span> Initialize<span class="k2">(</span><span class="k1">int</span> x, <span class="k1">int</span> y, <span class="k1">int</span> velX, <span class="k1">int</span> velY, <a href="http://www.allegro.cc/manual/ALLEGRO_BITMAP"><span class="a">ALLEGRO_BITMAP</span></a><span class="k3">*</span> image<span class="k2">[</span><span class="n">3</span><span class="k2">]</span><span class="k2">)</span><span class="k2">;</span>
<span class="k1">virtual</span> <span class="k1">void</span> Update<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> 
<span class="k1">virtual</span> <span class="k1">void</span> Render<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>

I&#39;m thinking maybe without the virtual, it does not register with the vtable and still considers Player as abstract.</p><p>Edit:</p><p>Looks like your way is correct <a href="http://www.tutorialspoint.com/cplusplus/cpp_interfaces.htm">http://www.tutorialspoint.com/cplusplus/cpp_interfaces.htm</a></p><p>Not sure what&#39;s wrong.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (jmasterx)</author>
		<pubDate>Sun, 05 Apr 2015 10:11:34 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Yeah, it was saying it was abstract after I worked on it a bit, then I tried void virtual instead of virtual void without the = 0 at the end. That seemed to work. Thanks anyways! <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (agonvs)</author>
		<pubDate>Sun, 05 Apr 2015 10:58:01 +0000</pubDate>
	</item>
</rss>
