<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Mappy tile mapping system now available for Allegro 5</title>
		<link>http://www.allegro.cc/forums/view/606962</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Fri, 08 Apr 2011 04:28:27 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hello,<br />I&#39;ve been beavering away and have an Allegro 5 version of mappy tilemap system (<a href="http://www.tilemap.co.uk/mappy.php">http://www.tilemap.co.uk/mappy.php</a>) and would appreciate your perusal. I&#39;ve been using mappy for a long time and I think it&#39;s really really good and more people should use it <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>Features:<br />- standard square tilemap<br />- hex based tiles<br />- staggered isometric maps<br />- parallax scrolling<br />- embedded graphics<br />- embedded animations<br />- supports 8, 15,16,24,32 bit map files<br />- 8 layers, each layer comprising 1 background and 3 foreground tiles for extra layering<br />- each tile can have many custom variables associated<br />- extendible through your own data chunks in the file<br />- simple interface for use<br />- complete editor for tilemaps with onion skinning, lua support (for scripting such as auto smoothing, GBA support), etc (this is for windows only, but works fine under wine)<br />- I use the allegro file handlers so should work with physfs<br />- conversion of pink/black/index 0 to alpha if required</p><p>Demo:<br />- demo includes a mix of 8 and 32 bit maps in standard, hex and iso format with animated tiles and parallax. Sorry, the scrolling is a bit pants with regard smoothness, that&#39;s just my coding <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>Instructions:<br />- readme containing functions<br />- html documentation describing how mappy works and how to use it plus the file format, etc</p><p>Screenshots:<br /><span class="remote-thumbnail"><span class="json">{"name":"603872","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/6\/4\/645a91eb9424855338840758a78661d3.jpg","w":656,"h":518,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/6\/4\/645a91eb9424855338840758a78661d3"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/6/4/645a91eb9424855338840758a78661d3-240.jpg" alt="603872" width="240" height="189" /></span><br /><span class="remote-thumbnail"><span class="json">{"name":"603874","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/e\/f\/efecdf8c0a8194e3a5487fd1c5835abb.jpg","w":656,"h":518,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/e\/f\/efecdf8c0a8194e3a5487fd1c5835abb"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/e/f/efecdf8c0a8194e3a5487fd1c5835abb-240.jpg" alt="603874" width="240" height="189" /></span><br /><span class="remote-thumbnail"><span class="json">{"name":"603873","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/7\/8\/78ecb1421ed30c86265b2033248e8642.jpg","w":656,"h":518,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/7\/8\/78ecb1421ed30c86265b2033248e8642"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/7/8/78ecb1421ed30c86265b2033248e8642-240.jpg" alt="603873" width="240" height="189" /></span><br /><span class="remote-thumbnail"><span class="json">{"name":"603876","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/5\/7\/572c5f5608206827bfaa0f20a34c8fd3.jpg","w":642,"h":511,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/5\/7\/572c5f5608206827bfaa0f20a34c8fd3"}</span><img src="http://www.allegro.cc//djungxnpq2nug.cloudfront.net/image/cache/5/7/572c5f5608206827bfaa0f20a34c8fd3-240.jpg" alt="603876" width="240" height="191" /></span></p><p>Compiling:<br />1. Add the mappy_a5.c to your project<br />2. Add the mappy_a5.h to your project<br />3. Include the header in your game and compile. Note, the file <b>must</b> be compiled as C not C++</p><p>The demo was compiled using the allegro-5.0.2-monolith-md library and visual studio 2010 so you will need this dll handy and I don&#39;t know about the effects of a visual studio exe is on non-msvc systems.</p><p>Get it from the mappy.zip attachment.</p><p>Quick Usage:<br />Essentially, read the demo1.c, it&#39;s self-explanatory.</p><p>1. Load the map using MapLoad() passing in the file and whether you want black/pink/index 0 converting to alpha channel<br />2. Use MapFreeMem() when finished<br />3. Use MapDrawBG() to draw background and MapDrawFG() to draw foreground tile layers<br />4. Use MapUpdateAnims() to update animations<br />5. Various helper functions to get/set tiles, etc.</p><p>This is first version so there may be issues <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Neil Walker)</author>
		<pubDate>Fri, 08 Apr 2011 04:06:25 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title"><a href="http://www.allegro.cc/forums/thread/606962/912401#target">Neil Walker</a> said:</div><div class="quote"><p>
3. Include the header in your game and compile. Note, the file must be compiled as C not C++
</p></div></div><p>
If the code in the header is defined as &quot;extern C&quot; there shouldn&#39;t be a problem compiling as C++, right? Or is it something else?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Fri, 08 Apr 2011 04:25:59 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Yes, it is, but I think it&#39;s more to do with the exotic use of void pointers and non-casting <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /></p><p>But it&#39;s not an issue really, if you are coding in C++, in MSVC it works by file extension (but you can just tell it to compile that file as c and mix c/c++ files), and in mingw editors you probably need to compile the .c to a .o and use that instead first.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Neil Walker)</author>
		<pubDate>Fri, 08 Apr 2011 04:28:27 +0000</pubDate>
	</item>
</rss>
