<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>MikeCann.co.uk &#187; Flash - MikeCann.co.uk - mikey see, mikey do!</title>
	<atom:link href="http://mikecann.co.uk/category/flash/feed/" rel="self" type="application/rss+xml" />
	<link>http://mikecann.co.uk</link>
	<description>mikey see, mikey do!</description>
	<lastBuildDate>Sat, 28 Jan 2012 13:10:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>1046: Type was not found or was not a compile-time constant</title>
		<link>http://mikecann.co.uk/flash/1046-type-was-not-found-or-was-not-a-compile-time-constant/</link>
		<comments>http://mikecann.co.uk/flash/1046-type-was-not-found-or-was-not-a-compile-time-constant/#comments</comments>
		<pubDate>Tue, 08 Feb 2011 21:42:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Actionscript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[MXML]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[class]]></category>
		<category><![CDATA[code assist]]></category>
		<category><![CDATA[compile]]></category>
		<category><![CDATA[crash]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[flash builder]]></category>
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://mikecann.co.uk/?p=1495</guid>
		<description><![CDATA[Came across this little oddity the other day. Took me ages to work out what was going on, so thought I would share in case anyone else ran into the same issue. One day, for a reason I couldn&#8217;t fathom, my project stopped compiling. I kept getting these odd &#8220;1046: Type was not found or was not a compile-time constant&#8221; errors [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://mikecann.co.uk/wp-content/uploads/2011/02/001.jpg"><img class="alignnone size-full wp-image-1496" title="001" src="http://mikecann.co.uk/wp-content/uploads/2011/02/001.jpg" alt="" width="700" height="418" /></a></p>
<p>Came across this little oddity the other day. Took me ages to work out what was going on, so thought I would share in case anyone else ran into the same issue.</p>
<p>One day, for a reason I couldn&#8217;t fathom, my project stopped compiling. I kept getting these odd &#8220;1046: Type was not found or was not a compile-time constant&#8221; errors all over the place. Not only that, when I tried to include the class in question either via auto-complete (control &amp; space) or via manual import the error persisted.</p>
<p>To cut a long story short it seems that if you try to new a member property that is of type Class from another class and the constructor takes in at least one parameter the error will occur.</p>
<p>So for example take the two following classes:</p>
<div id="wpshdo_1" class="wp-synhighlighter-outer"><div id="wpshdt_1" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_1"></a><a id="wpshat_1" class="wp-synhighlighter-title" href="#codesyntax_1"  onClick="javascript:wpsh_toggleBlock(1)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_1" onClick="javascript:wpsh_code(1)" title="Show code only"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_1" onClick="javascript:wpsh_print(1)" title="Print code"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_1" class="wp-synhighlighter-inner" style="display: block;"><pre class="actionscript3" style="font-family:monospace;"><span class="kw4">package</span> package2
<span class="br0">&#123;</span>
	<span class="kw1">import</span> package1<span class="sy0">.</span>MyTestClass<span class="sy0">;</span>
&nbsp;
	<span class="kw1">public</span> <span class="kw4">class</span> MyTestClass2
	<span class="br0">&#123;</span>
		<span class="kw1">public</span> <span class="kw2">var</span> <span class="kw7">type</span> <span class="sy0">:</span> <a href="http://www.google.com/search?q=class%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:class.html"><span class="kw5">Class</span></a> = MyTestClass<span class="sy0">;</span>
	<span class="br0">&#125;</span>
<span class="br0">&#125;</span></pre></div></div>
<p>And</p>
<div id="wpshdo_2" class="wp-synhighlighter-outer"><div id="wpshdt_2" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_2"></a><a id="wpshat_2" class="wp-synhighlighter-title" href="#codesyntax_2"  onClick="javascript:wpsh_toggleBlock(2)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_2" onClick="javascript:wpsh_code(2)" title="Show code only"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_2" onClick="javascript:wpsh_print(2)" title="Print code"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_2" class="wp-synhighlighter-inner" style="display: block;"><pre class="actionscript" style="font-family:monospace;">package package1
<span class="br0">&#123;</span>
	<span class="kw3">public</span> <span class="kw2">class</span> MyTestClass
	<span class="br0">&#123;</span>
		<span class="kw3">public</span> <span class="kw2">function</span> MyTestClass<span class="br0">&#40;</span>someVar:<span class="kw3">String</span><span class="br0">&#41;</span>
		<span class="br0">&#123;</span>
			<span class="kw3">trace</span><span class="br0">&#40;</span>someVar<span class="br0">&#41;</span>;
		<span class="br0">&#125;</span>
	<span class="br0">&#125;</span>
<span class="br0">&#125;</span></pre></div></div>
<p>Now try using them in the following fashion:</p>
<div id="wpshdo_3" class="wp-synhighlighter-outer"><div id="wpshdt_3" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_3"></a><a id="wpshat_3" class="wp-synhighlighter-title" href="#codesyntax_3"  onClick="javascript:wpsh_toggleBlock(3)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_3" onClick="javascript:wpsh_code(3)" title="Show code only"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_3" onClick="javascript:wpsh_print(3)" title="Print code"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_3" class="wp-synhighlighter-inner" style="display: block;"><pre class="mxml" style="font-family:monospace;"><span class="sc3">&lt;?xml version=<span class="st0">&quot;1.0&quot;</span> encoding=<span class="st0">&quot;utf-8&quot;</span>?<span class="re2">&gt;</span></span>
<span class="sc3"><span class="re1">&lt;s:Application</span> xmlns:fx=<span class="st0">&quot;http://ns.adobe.com/mxml/2009&quot;</span></span>
<span class="sc3">			   xmlns:s=<span class="st0">&quot;library://ns.adobe.com/flex/spark&quot;</span></span>
<span class="sc3">			   xmlns:mx=<span class="st0">&quot;library://ns.adobe.com/flex/mx&quot;</span> creationComplete=<span class="st0">&quot;application1_creationCompleteHandler(event)&quot;</span><span class="re2">&gt;</span></span>
&nbsp;
	<span class="sc3"><span class="re1">&lt;fx:Script</span><span class="re2">&gt;</span></span>
		<span class="sc3">&lt;!<span class="br0">&#91;</span>CDATA<span class="br0">&#91;</span></span>
<span class="sc3">			import mx.events.FlexEvent;			</span>
&nbsp;
<span class="sc3">			protected function application1_creationCompleteHandler<span class="br0">&#40;</span>event:FlexEvent<span class="br0">&#41;</span>:void</span>
<span class="sc3">			<span class="br0">&#123;</span></span>
<span class="sc3">				var class2 : MyTestClass2 = new MyTestClass2<span class="br0">&#40;</span><span class="br0">&#41;</span>;</span>
<span class="sc3">				var class1 : MyTestClass = new <span class="br0">&#40;</span>class2.type<span class="br0">&#41;</span><span class="br0">&#40;</span><span class="st0">&quot;hello&quot;</span><span class="br0">&#41;</span>;</span>
<span class="sc3">			<span class="br0">&#125;</span></span>
&nbsp;
<span class="sc3">		<span class="br0">&#93;</span><span class="br0">&#93;</span><span class="re2">&gt;</span></span>
	<span class="sc3"><span class="re1">&lt;/fx:Script</span><span class="re2">&gt;</span></span>
&nbsp;
<span class="sc3"><span class="re1">&lt;/s:Application</span><span class="re2">&gt;</span></span></pre></div></div>
<p>And uh oh, bad times:</p>
<div id="wpshdo_4" class="wp-synhighlighter-outer"><div id="wpshdt_4" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_4"></a><a id="wpshat_4" class="wp-synhighlighter-title" href="#codesyntax_4"  onClick="javascript:wpsh_toggleBlock(4)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_4" onClick="javascript:wpsh_code(4)" title="Show code only"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_4" onClick="javascript:wpsh_print(4)" title="Print code"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_4" class="wp-synhighlighter-inner" style="display: block;"><pre class="php" style="font-family:monospace;">1046<span class="sy0">:</span> Type was not found or was not a compile<span class="sy0">-</span><a href="http://www.php.net/time"><span class="kw3">time</span></a> <a href="http://www.php.net/constant"><span class="kw3">constant</span></a><span class="sy0">:</span> MyTestClass<span class="sy0">.</span>	FlexBugExperiment<span class="sy0">.</span>mxml	<span class="sy0">/</span>FlexBugExperiment<span class="sy0">/</span>src<span class="sy0">/</span>main	line 14	Flex Problem
&nbsp;
1046<span class="sy0">:</span> Type was not found or was not a compile<span class="sy0">-</span><a href="http://www.php.net/time"><span class="kw3">time</span></a> <a href="http://www.php.net/constant"><span class="kw3">constant</span></a><span class="sy0">:</span> MyTestClass2<span class="sy0">.</span>	FlexBugExperiment<span class="sy0">.</span>mxml	<span class="sy0">/</span>FlexBugExperiment<span class="sy0">/</span>src<span class="sy0">/</span>main	line <span class="nu0">13</span>	Flex Problem
&nbsp;
<span class="nu0">1180</span><span class="sy0">:</span> Call to a possibly undefined method MyTestClass2<span class="sy0">.</span>	FlexBugExperiment<span class="sy0">.</span>mxml	<span class="sy0">/</span>FlexBugExperiment<span class="sy0">/</span>src<span class="sy0">/</span>main	line <span class="nu0">13</span>	Flex Problem</pre></div></div>
<p>The bad line is:</p>
<div id="wpshdo_5" class="wp-synhighlighter-outer"><div id="wpshdt_5" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_5"></a><a id="wpshat_5" class="wp-synhighlighter-title" href="#codesyntax_5"  onClick="javascript:wpsh_toggleBlock(5)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_5" onClick="javascript:wpsh_code(5)" title="Show code only"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_5" onClick="javascript:wpsh_print(5)" title="Print code"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_5" class="wp-synhighlighter-inner" style="display: block;"><pre class="actionscript" style="font-family:monospace;"><span class="kw2">var</span> class1 : MyTestClass = <span class="kw2">new</span> <span class="br0">&#40;</span>class2.<span class="kw3">type</span><span class="br0">&#41;</span><span class="br0">&#40;</span><span class="st0">&quot;hello&quot;</span><span class="br0">&#41;</span>;</pre></div></div>
<p>If you take away the &#8220;hello&#8221; part or you split it out into two lines like so:</p>
<div id="wpshdo_6" class="wp-synhighlighter-outer"><div id="wpshdt_6" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_6"></a><a id="wpshat_6" class="wp-synhighlighter-title" href="#codesyntax_6"  onClick="javascript:wpsh_toggleBlock(6)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_6" onClick="javascript:wpsh_code(6)" title="Show code only"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_6" onClick="javascript:wpsh_print(6)" title="Print code"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_6" class="wp-synhighlighter-inner" style="display: block;"><pre class="actionscript" style="font-family:monospace;"><span class="kw2">var</span> tmpC : <span class="kw2">Class</span> = <span class="br0">&#40;</span>class2.<span class="kw3">type</span><span class="br0">&#41;</span>;
<span class="kw2">var</span> class1 : MyTestClass = <span class="kw2">new</span> tmpC<span class="br0">&#40;</span><span class="st0">&quot;hello&quot;</span><span class="br0">&#41;</span>;</pre></div></div>
<p>Then everything is gravy</p>
<p>Anyway, I hope this helped someone out!</p>
]]></content:encoded>
			<wfw:commentRss>http://mikecann.co.uk/flash/1046-type-was-not-found-or-was-not-a-compile-time-constant/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Funk IoC &#8211; A New Dependency Injection Framework</title>
		<link>http://mikecann.co.uk/flash/funk-ioc-a-new-dependency-injection-framework/</link>
		<comments>http://mikecann.co.uk/flash/funk-ioc-a-new-dependency-injection-framework/#comments</comments>
		<pubDate>Thu, 08 Apr 2010 20:17:10 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Actionscript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Framework]]></category>
		<category><![CDATA[Functional]]></category>
		<category><![CDATA[Funk]]></category>
		<category><![CDATA[Impressive]]></category>
		<category><![CDATA[IoC]]></category>
		<category><![CDATA[Robot Legs]]></category>
		<category><![CDATA[Swift Suspenders]]></category>

		<guid isPermaLink="false">http://www.mikecann.co.uk/?p=1020</guid>
		<description><![CDATA[Twitter can be a funny beast, what makes it great can also make it poor. I use Twhirl which keeps me updated any time one of the people I follow tweets about something, the only problem is that so many people tweet that if I dont happen to see it within about and hour or so of the [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://mikecann.co.uk/wp-content/uploads/2010/04/ScreenHunter_01-Apr.-08-20.11.gif"><img class="alignnone size-full wp-image-1023" title="ScreenHunter_01 Apr. 08 20.11" src="http://mikecann.co.uk/wp-content/uploads/2010/04/ScreenHunter_01-Apr.-08-20.11.gif" alt="" width="710" height="164" /></a></p>
<p>Twitter can be a funny beast, what makes it great can also make it poor. I use <a href="http://www.twhirl.org/">Twhirl </a>which keeps me updated any time one of the people I follow tweets about something, the only problem is that so many people tweet that if I dont happen to see it within about and hour or so of the Tweet, ill miss it. This time however I was lucky enough to catch a tweet by <a href="http://twitter.com/joa">@Joa</a> about his new Inversion of Control and functional-programming-like library, <a href="http://code.google.com/p/funk-as3/">Funk AS3</a>.</p>
<p>As I have been getting well into <a href="http://www.robotlegs.org/">RobotLegs</a> (a Dependency Injection MVCS framework) recently I was extremely interested to hear about this new project by Joa who I respect very much as a brilliant coder not least because of his excellent work on low-level Flash byte-code optimisation (see <a href="http://code.google.com/p/apparat/">Apparat</a>).</p>
<p>Joa has taken a different approach to doing dependency injection. The approach most frequently used (and the one used in SwiftSuspenders / RobotLegs) is to use meta-data to declare to a number of variables for injection. You then map a class to be injected and instantiate it using the injector.</p>
<p>As an example, with Swift Suspenders you would define a class for injection with something like the following:</p>
<div id="wpshdo_7" class="wp-synhighlighter-outer"><div id="wpshdt_7" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_7"></a><a id="wpshat_7" class="wp-synhighlighter-title" href="#codesyntax_7"  onClick="javascript:wpsh_toggleBlock(7)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_7" onClick="javascript:wpsh_code(7)" title="Show code only"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_7" onClick="javascript:wpsh_print(7)" title="Print code"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_7" class="wp-synhighlighter-inner" style="display: block;"><pre class="actionscript3" style="font-family:monospace;"><ol><li class="li1"><div class="de1"><span class="kw4">class</span> MyInjectedClass</div></li><li class="li1"><div class="de1"><span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">	<span class="kw1">public</span> <span class="kw3">function</span> sayHello<span class="br0">&#40;</span>toSay<span class="sy0">:</span><a href="http://www.google.com/search?q=string%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:string.html"><span class="kw5">String</span></a><span class="br0">&#41;</span></div></li><li class="li1"><div class="de1">	<span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">		<span class="kw7">trace</span><span class="br0">&#40;</span><span class="st0">&quot;Hello &quot;</span><span class="sy0">+</span>toStay<span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">	<span class="br0">&#125;</span></div></li><li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1"><span class="kw2">var</span> injector <span class="sy0">:</span> Injector = <span class="kw1">new</span> Injector<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">injector<span class="sy0">.</span>mapSingleton<span class="br0">&#40;</span>MyInjectedClass<span class="br0">&#41;</span><span class="sy0">;</span></div></li></ol></pre></div></div>
<p>Here we are telling the Injector to make a single instance of our class and hold it internally ready for when it is next requested, such as:</p>
<div id="wpshdo_8" class="wp-synhighlighter-outer"><div id="wpshdt_8" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_8"></a><a id="wpshat_8" class="wp-synhighlighter-title" href="#codesyntax_8"  onClick="javascript:wpsh_toggleBlock(8)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_8" onClick="javascript:wpsh_code(8)" title="Show code only"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_8" onClick="javascript:wpsh_print(8)" title="Print code"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_8" class="wp-synhighlighter-inner" style="display: block;"><pre class="actionscript3" style="font-family:monospace;"><ol><li class="li1"><div class="de1"><span class="kw4">class</span> MyDependantClass</div></li><li class="li1"><div class="de1"><span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">	<span class="br0">&#91;</span>Inject<span class="br0">&#93;</span> <span class="kw1">public</span> <span class="kw2">var</span> myClass <span class="sy0">:</span> MyInjectedClass<span class="sy0">;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">	<span class="kw1">public</span> <span class="kw3">function</span> performAction<span class="br0">&#40;</span><span class="br0">&#41;</span></div></li><li class="li1"><div class="de1">	<span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">		myClass<span class="sy0">.</span>sayHello<span class="br0">&#40;</span><span class="st0">&quot;World&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">	<span class="br0">&#125;</span></div></li><li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li></ol></pre></div></div>
<p>Here the [Inject] meta-data indicates that we want the framework to supply the class with an instance of type MyInjectedClass. The final part is to make an instance of the dendant class and inject into it:</p>
<div id="wpshdo_9" class="wp-synhighlighter-outer"><div id="wpshdt_9" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_9"></a><a id="wpshat_9" class="wp-synhighlighter-title" href="#codesyntax_9"  onClick="javascript:wpsh_toggleBlock(9)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_9" onClick="javascript:wpsh_code(9)" title="Show code only"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_9" onClick="javascript:wpsh_print(9)" title="Print code"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_9" class="wp-synhighlighter-inner" style="display: block;"><pre class="actionscript3" style="font-family:monospace;"><ol><li class="li1"><div class="de1"><span class="kw2">var</span> dependant <span class="sy0">:</span> MyDependantClass = <span class="kw1">new</span> MyDependantClass<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">injector<span class="sy0">.</span>injectInto<span class="br0">&#40;</span>dependant<span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">dependant<span class="sy0">.</span>performAction<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li></ol></pre></div></div>
<p>As you can see this is a nice way of handling inter-module dependencies in your code, when coupled with a MVC framework such as RobotLegs it becomes and extremely powerful yet elegant way of coding.</p>
<p>It however isnt perfect and Joa, on his <a href="http://code.google.com/p/funk-as3/wiki/IoC">google code page</a> mentions three drawbacks of this method:</p>
<ul>
<blockquote>
<li>Your injected properties are publicly exposed and mutable.</li>
<li>describeType is very expensive.</li>
<li>Steep learning curve.</li>
</blockquote>
</ul>
<p>This is where he suggests his alternative method, which is quite ingenious. Using the same example as above you would see something like the following:</p>
<div id="wpshdo_10" class="wp-synhighlighter-outer"><div id="wpshdt_10" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_10"></a><a id="wpshat_10" class="wp-synhighlighter-title" href="#codesyntax_10"  onClick="javascript:wpsh_toggleBlock(10)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_10" onClick="javascript:wpsh_code(10)" title="Show code only"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_10" onClick="javascript:wpsh_print(10)" title="Print code"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_10" class="wp-synhighlighter-inner" style="display: block;"><pre class="actionscript3" style="font-family:monospace;"><ol><li class="li1"><div class="de1"><span class="kw4">class</span> MyInjectedClass</div></li><li class="li1"><div class="de1"><span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">	<span class="kw1">public</span> <span class="kw3">function</span> sayHello<span class="br0">&#40;</span>toSay<span class="sy0">:</span><a href="http://www.google.com/search?q=string%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:string.html"><span class="kw5">String</span></a><span class="br0">&#41;</span></div></li><li class="li1"><div class="de1">	<span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">		<span class="kw7">trace</span><span class="br0">&#40;</span><span class="st0">&quot;Hello &quot;</span><span class="sy0">+</span>toStay<span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">	<span class="br0">&#125;</span></div></li><li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">bind<span class="br0">&#40;</span>MyInjectedClass<span class="br0">&#41;</span><span class="sy0">.</span>asSingleton<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li></ol></pre></div></div>
<p>Then the dependant class would look like the following:</p>
<div id="wpshdo_11" class="wp-synhighlighter-outer"><div id="wpshdt_11" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_11"></a><a id="wpshat_11" class="wp-synhighlighter-title" href="#codesyntax_11"  onClick="javascript:wpsh_toggleBlock(11)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_11" onClick="javascript:wpsh_code(11)" title="Show code only"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_11" onClick="javascript:wpsh_print(11)" title="Print code"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_11" class="wp-synhighlighter-inner" style="display: block;"><pre class="actionscript3" style="font-family:monospace;"><ol><li class="li1"><div class="de1"><span class="kw4">class</span> MyInjectedClass</div></li><li class="li1"><div class="de1"><span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">	<span class="kw1">protected</span> <span class="kw2">var</span> myClass <span class="sy0">:</span> MyInjectedClass = inject<span class="br0">&#40;</span>MyInjectedClass<span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">	<span class="kw1">public</span> <span class="kw3">function</span> performAction<span class="br0">&#40;</span><span class="br0">&#41;</span></div></li><li class="li1"><div class="de1">	<span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">		myClass<span class="sy0">.</span>sayHello<span class="br0">&#40;</span><span class="st0">&quot;World&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">	<span class="br0">&#125;</span></div></li><li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li></ol></pre></div></div>
<p>And making an instance of it could be as simple as:</p>
<div id="wpshdo_12" class="wp-synhighlighter-outer"><div id="wpshdt_12" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_12"></a><a id="wpshat_12" class="wp-synhighlighter-title" href="#codesyntax_12"  onClick="javascript:wpsh_toggleBlock(12)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_12" onClick="javascript:wpsh_code(12)" title="Show code only"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_12" onClick="javascript:wpsh_print(12)" title="Print code"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://mikecann.co.uk/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_12" class="wp-synhighlighter-inner" style="display: block;"><pre class="actionscript3" style="font-family:monospace;"><ol><li class="li1"><div class="de1"><span class="kw2">var</span> dependant <span class="sy0">:</span> MyDependantClass = <span class="kw1">new</span> MyDependantClass<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">dependant<span class="sy0">.</span>performAction<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li></ol></pre></div></div>
<p>As can be seen there are some benefits to this method, the biggest one in my opinion is that injected properties dont have to be public as they are provided by the call from within the class scope rather than from outside.</p>
<p>So how does Joa perform this magic? By abusing a little used ability of the Actionscript programming language known as package-level-functions. These are throwbacks from the old AS1 &amp; AS2 days of global functions. There are actually a couple of common examples in AS3 still such as getTimer() and getQualifiedClassName() still used. What Joa has done is to use these package level functions as a method of generating concise looking code reminiscent of functional programming.</p>
<p>Performance wise, im not entirely sure whether by using package-level functions instead of describeType() calls used in meta-data driven IoC frameworks is any faster as Till Schneidereit of Swift Suspenders suggests:</p>
<blockquote><p>I don&#8217;t think that Funk&#8217;s approach is any faster than an optimized<br />
metadata-based IoC container: describeType may be slow (as in &#8220;takes a<br />
few dozen microseconds to run&#8221;), but is only ever called once for each<br />
class an instance of which is injected into. After that, it&#8217;s just a<br />
straight iteration over an array for all injection points instead of<br />
Funk&#8217;s multiple method calls for each injection point.</p></blockquote>
<p>So the next step for me is to run some tests to see how things pan out. Either way im very impressed with both approaches and cant wait to see what kind of exciting advances will be developed in the coming months.</p>
]]></content:encoded>
			<wfw:commentRss>http://mikecann.co.uk/flash/funk-ioc-a-new-dependency-injection-framework/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>BlastWave: Lost at Sea</title>
		<link>http://mikecann.co.uk/flash/blastwave-lost-at-sea/</link>
		<comments>http://mikecann.co.uk/flash/blastwave-lost-at-sea/#comments</comments>
		<pubDate>Fri, 04 Dec 2009 09:38:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Actionscript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Personal Projects]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Projects]]></category>

		<guid isPermaLink="false">http://www.mikecann.co.uk/?p=783</guid>
		<description><![CDATA[FINALLY ITS LIVE!!!! Oh my, it has taken literally months and months to get all the deals sorted but finally now its done and out. Its Oliver and my latest game. It was supposed to be a quick re-skin of BlastWave, but as usual &#8220;quick&#8221; was a word that got lost during development as we [...]]]></description>
			<content:encoded><![CDATA[<p>FINALLY ITS LIVE!!!! Oh my, it has taken literally<a href="http://www.mikecann.co.uk/personal-project/the-next-one-blast-wave-2/"> months and months</a> to get all the deals sorted but finally now its done and out.</p>
<p>Its <a href="http://www.olip.co.uk/">Oliver </a>and my latest game. It was supposed to be a quick re-skin of <a href="http://www.mikecann.co.uk/flash/blast-wave/">BlastWave</a>, but as usual &#8220;quick&#8221; was a word that got lost during development as we got excited about it and decided to add more and more features.</p>
<p>The Art by <a href="http://www.olip.co.uk/">Oliver Pitceathly</a> follows a simmilar style to <a href="http://www.mikecann.co.uk/personal-project/monkey-mines/">MonkeyMines</a>. Hope you like it!</p>
<p><span id="more-783"></span></p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="600" height="600" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://games.mochiads.com/c/g/blastwave-lost-at-sea/blastwave.swf" /><embed type="application/x-shockwave-flash" width="600" height="600" src="http://games.mochiads.com/c/g/blastwave-lost-at-sea/blastwave.swf"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://mikecann.co.uk/flash/blastwave-lost-at-sea/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BlastWave: Lost at Sea, so very almost!</title>
		<link>http://mikecann.co.uk/flash/blastwave-lost-at-sea-so-very-almost/</link>
		<comments>http://mikecann.co.uk/flash/blastwave-lost-at-sea-so-very-almost/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 10:33:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Personal Projects]]></category>
		<category><![CDATA[Blastwave 2]]></category>
		<category><![CDATA[Game]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Sponsorship]]></category>
		<category><![CDATA[Teaser]]></category>

		<guid isPermaLink="false">http://www.mikecann.co.uk/?p=776</guid>
		<description><![CDATA[It has been months and months since Oliver and I finished (functionally) our latest flash game &#8216;BlastWave: Lost at Sea&#8217;. It has taken all this time to sort out sponsorship deals, with all the various portals. We have been through headache after headache but its finally almost time to release to the general public! The [...]]]></description>
			<content:encoded><![CDATA[<p>It has been months and months since Oliver and I finished (functionally) our latest flash game &#8216;BlastWave: Lost at Sea&#8217;. It has taken all this time to sort out sponsorship deals, with all the various portals. We have been through headache after headache but its finally almost time to release to the general public!</p>
<p>The following is a little promotional clip done by MiniClip.com for the game, quite cute we think. Anyways stay tuned, to play the game in the next few days!</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="500" height="350" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://mikecann.co.uk/wp-content/uploads/2009/11/blastwave.swf?loop=true" /><embed type="application/x-shockwave-flash" width="500" height="350" src="http://mikecann.co.uk/wp-content/uploads/2009/11/blastwave.swf?loop=true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://mikecann.co.uk/flash/blastwave-lost-at-sea-so-very-almost/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Q-BLOCK</title>
		<link>http://mikecann.co.uk/flash/q-block/</link>
		<comments>http://mikecann.co.uk/flash/q-block/#comments</comments>
		<pubDate>Thu, 27 Aug 2009 15:21:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Fun & Videos]]></category>
		<category><![CDATA[Art]]></category>
		<category><![CDATA[Draw]]></category>
		<category><![CDATA[Pixel]]></category>

		<guid isPermaLink="false">http://www.mikecann.co.uk/?p=667</guid>
		<description><![CDATA[Q-BLOCK &#8211; Create 3D Pixel Art Online Oh my this is good! An excellent use of flash and 3D! (cheers to Richard Davey for pointing this out). Cant help making the reference to Fez:]]></description>
			<content:encoded><![CDATA[<p><a href="http://mikecann.co.uk/wp-content/uploads/2009/08/image4.gif"><img class="alignnone size-full wp-image-671" title="image(4)" src="http://mikecann.co.uk/wp-content/uploads/2009/08/image4.gif" alt="image(4)" width="100" height="100" /></a><a href="http://mikecann.co.uk/wp-content/uploads/2009/08/image5.gif"><img class="alignnone size-full wp-image-670" title="image(5)" src="http://mikecann.co.uk/wp-content/uploads/2009/08/image5.gif" alt="image(5)" width="100" height="100" /></a><a href="http://mikecann.co.uk/wp-content/uploads/2009/08/image2.gif"><img class="alignnone size-full wp-image-669" title="image(2)" src="http://mikecann.co.uk/wp-content/uploads/2009/08/image2.gif" alt="image(2)" width="100" height="100" /></a><a href="http://mikecann.co.uk/wp-content/uploads/2009/08/image.gif"><img class="alignnone size-full wp-image-668" title="image" src="http://mikecann.co.uk/wp-content/uploads/2009/08/image.gif" alt="image" width="100" height="100" /></a><a href="http://mikecann.co.uk/wp-content/uploads/2009/08/image7.gif"><img class="alignnone size-full wp-image-672" title="image(7)" src="http://mikecann.co.uk/wp-content/uploads/2009/08/image7.gif" alt="image(7)" width="100" height="100" /></a><a href="http://mikecann.co.uk/wp-content/uploads/2009/08/image6.gif"><img class="alignnone size-full wp-image-673" title="image(6)" src="http://mikecann.co.uk/wp-content/uploads/2009/08/image6.gif" alt="image(6)" width="100" height="100" /></a></p>
<p><a href="http://kyucon.com/qblock/">Q-BLOCK &#8211; Create 3D Pixel Art Online</a></p>
<p>Oh my this is good! An excellent use of flash and 3D! (cheers to <a href="http://www.photonstorm.com/">Richard Davey</a> for pointing this out).</p>
<p>Cant help making the reference to Fez:</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="505" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/FrVVIVyLx-Y&amp;hl=en&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="640" height="505" src="http://www.youtube.com/v/FrVVIVyLx-Y&amp;hl=en&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://mikecann.co.uk/flash/q-block/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Flash to iPhone: #1 MotherLoad / iDigIt</title>
		<link>http://mikecann.co.uk/flash/flash-to-iphone-1-motherload-idigit/</link>
		<comments>http://mikecann.co.uk/flash/flash-to-iphone-1-motherload-idigit/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 17:34:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Game]]></category>
		<category><![CDATA[Review]]></category>

		<guid isPermaLink="false">http://www.mikecann.co.uk/?p=641</guid>
		<description><![CDATA[Every day I am seeing new game releases on the app store that have already seen a life in the flash game world. I dont know whether its the original developer that is making these iPhone ports or if the IP is being ripped off. Anyways I thought it may be a good idea to [...]]]></description>
			<content:encoded><![CDATA[<p>Every day I am seeing new game releases on the app store that have already seen a life in the flash game world. I dont know whether its the original developer that is making these iPhone ports or if the IP is being ripped off. Anyways I thought it may be a good idea to report on a few of these games ports, things I like / dislike with any changes made in the transition from flash to iPhone.</p>
<p>First up is one of my favorite flash games of all time <a href="http://www.miniclip.com/games/motherload/en/">MotherLoad</a>.</p>
<p><a href="http://www.miniclip.com/games/motherload/en/"><img class="aligncenter size-full wp-image-642" title="Picture 3" src="http://mikecann.co.uk/wp-content/uploads/2009/08/Picture-3.png" alt="Picture 3" width="544" height="371" /></a><br />
I loved the simplicity and addictiveness of this game. Basically you play a miner who digs down through the earth for minerals and then has to return to the surface to sell the minerals. With the cash you earn you can buy upgrades for you mining machine which allows you to go deeper and stay down for longer.</p>
<p>The graphics are simplistic but functional, giving you an easy to understand indicator of where the resources are and where you are to mine.</p>
<p><a href="http://mikecann.co.uk/wp-content/uploads/2009/08/Picture-2.png"><img class="aligncenter size-full wp-image-645" title="Picture 2" src="http://mikecann.co.uk/wp-content/uploads/2009/08/Picture-2.png" alt="Picture 2" width="547" height="397" /></a><br />
You can quite easily play this game for hours, getting deeper and deeper.</p>
<p>The iPhone version of this game is called <a href="http://www.inmotionsoftware.com/AppsGames/IDigIt.html">iDigIt and is by the developer inmotion software</a>.</p>
<p><a href="http://mikecann.co.uk/wp-content/uploads/2009/08/IMG_0353.png"><img class="aligncenter size-full wp-image-643" title="IMG_0353" src="http://mikecann.co.uk/wp-content/uploads/2009/08/IMG_0353.png" alt="IMG_0353" width="320" height="480" /></a></p>
<p>The first thing you notice is that the graphics have been given a significant upgrade. I must admit I like the graphical additions, I think they give a needed boost of professionalism to the game especially if you are going to pay 59p to download it.</p>
<p>Once the pleasure of the new graphics wears off you start to notice a few issues.</p>
<p>Firstly the whole radar thing. In the original game you could mine down as far as you wanted and still see the miner<a href="http://mikecann.co.uk/wp-content/uploads/2009/08/IMG_0355.png"><img class="alignright size-full wp-image-648" title="IMG_0355" src="http://mikecann.co.uk/wp-content/uploads/2009/08/IMG_0355.png" alt="IMG_0355" width="320" height="480" /></a>als around you, in the iPhone version they have introduced a &#8220;fog of war&#8221; that shrouds your digger as you start to go deeper. You can buy radar upgrades that increase the distance you can see but I found this to have little effect as you get deeper (see screenshot to the right).The effect of this is that you cant see where the minerals are so you end up digging blindly into the dark.</p>
<p>Another issue is the control system. The game uses an on-screen joystick, im not a particularly massive fan of this method in the first place but its compounded by the fact that you have 360 degrees of freedom when underground. This is an issue as when digging you can only dig right, left, and down at 90 degree angles so having 360 degrees of freedom results in you often digging in the direction you werent intending. I would of liked to have seen the digging directions limited to 90 degree angles when the digger is on the ground.</p>
<p>As for replayability of the game, i dont think this game will have the same appeal as other games due to the fact that the only change the deeper you go is that you get higher quality minerals. There doesnt appear to be any other variation (i may be wrong here). In the flash version there were events like earthquakes to keep you interested, I would of liked to have seen this developed some more and improved on, perhaps some interesting creatures that you encounter. This would of also prevented the most efficient yet most boring tactic of just mining every single block in a strip fashion from left to right.</p>
<p>Overall the game is probably worth the 59p (cheap!) download but I think some of the game play features could of been extended and improved giving a richer more replayable experience.</p>
]]></content:encoded>
			<wfw:commentRss>http://mikecann.co.uk/flash/flash-to-iphone-1-motherload-idigit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windosill</title>
		<link>http://mikecann.co.uk/flash/windosill/</link>
		<comments>http://mikecann.co.uk/flash/windosill/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 09:11:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Excellent]]></category>
		<category><![CDATA[Games]]></category>

		<guid isPermaLink="false">http://www.mikecann.co.uk/?p=627</guid>
		<description><![CDATA[Stumbled across this game this morning and was blown away by the beauty and complexity of the game, I dont want to think about the amount of code that must of gone into making this beast! Play Here]]></description>
			<content:encoded><![CDATA[<p><a href="https://www.mochigames.com/game/play/windosill_v4/"><img class="alignnone size-full wp-image-628" title="windowsil" src="http://mikecann.co.uk/wp-content/uploads/2009/07/windowsil.png" alt="windowsil" width="500" height="405" /></a></p>
<p>Stumbled across this game this morning and was blown away by the beauty and complexity of the game, I dont want to think about the amount of code that must of gone into making this beast!</p>
<p><a href="https://www.mochigames.com/game/play/windosill_v4/">Play Here</a></p>
]]></content:encoded>
			<wfw:commentRss>http://mikecann.co.uk/flash/windosill/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dev Update: BlastWave &#8211; Lost At Sea</title>
		<link>http://mikecann.co.uk/flash/dev-update-blastwave-lost-at-sea/</link>
		<comments>http://mikecann.co.uk/flash/dev-update-blastwave-lost-at-sea/#comments</comments>
		<pubDate>Wed, 15 Jul 2009 15:07:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Personal Projects]]></category>
		<category><![CDATA[Blastwave]]></category>
		<category><![CDATA[Game]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Update]]></category>

		<guid isPermaLink="false">http://www.mikecann.co.uk/?p=617</guid>
		<description><![CDATA[Oliver and I have been working hard on the game and we are almost ready to rock. We are wanting to go for a significantly more polished feel to this game and one of the factors that has been abit rough around the edges in the past has been the menu systems. As mentioned in [...]]]></description>
			<content:encoded><![CDATA[<p>Oliver and I have been working hard on the game and we are almost ready to rock.</p>
<p>We are wanting to go for a significantly more polished feel to this game and one of the factors that has been abit rough around the edges in the past has been the menu systems. As mentioned in a <a href="http://www.mikecann.co.uk/personal-project/the-next-one-blast-wave-2/">previous dev update</a> were were looking to for something like Photon Storm&#8217;s <a href="http://www.photonstorm.com/archives/378/kyobi-is-now-live-on-gamejacket">Kyobi </a>as a splash screen:</p>
<p><a href="http://mikecann.co.uk/wp-content/uploads/2009/07/bwfrontpage.png"><img class="alignnone size-full wp-image-618" title="bwfrontpage" src="http://mikecann.co.uk/wp-content/uploads/2009/07/bwfrontpage.png" alt="bwfrontpage" width="600" height="600" /></a></p>
<p>Also we have decided to jump on the micro-payments train and offer unlockable levels likely via the <a href="http://www.techcrunch.com/2009/06/25/mochi-media-launching-payments-platform-for-flash-games-early-results-are-stunning/">mochi-coins</a> system:</p>
<p><a href="http://mikecann.co.uk/wp-content/uploads/2009/07/bwlevels.png"><img class="alignnone size-full wp-image-619" title="bwlevels" src="http://mikecann.co.uk/wp-content/uploads/2009/07/bwlevels.png" alt="bwlevels" width="600" height="600" /></a></p>
<p>For the price of about $1 you will get 20 more levels with new puzzle features. We are also considering implementing an achievements system with an in-game &#8220;best of the best&#8221; leader board, but we haven&#8217;t quite worked out where to put that yet <img src='http://mikecann.co.uk/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Now the game is mostly feature complete its onto the slow laborious process of trying to find sponsors for the game.</p>
<p>Im off to France for 10 days tomorrow however so apart from a few emails, work will have to be suspended on this project for a little while. When I return I shall be starting at my new job (more on that when im back!)</p>
]]></content:encoded>
			<wfw:commentRss>http://mikecann.co.uk/flash/dev-update-blastwave-lost-at-sea/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Monkey Dressup</title>
		<link>http://mikecann.co.uk/flash/monkey-dressup/</link>
		<comments>http://mikecann.co.uk/flash/monkey-dressup/#comments</comments>
		<pubDate>Fri, 03 Jul 2009 09:56:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Actionscript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Games]]></category>

		<guid isPermaLink="false">http://www.mikecann.co.uk/?p=602</guid>
		<description><![CDATA[My partner in crime Oliver P has justÂ  released a little game. Its catered for a very specific, yet popular, crowd. Yes yes its a dress up game, but it has very nice graphics so I think its definately worth a mention]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-603" title="monkeykitten" src="http://mikecann.co.uk/wp-content/uploads/2009/07/monkeykitten.jpg" alt="monkeykitten" width="453" height="323" /></p>
<p>My partner in crime <a href="http://www.olip.co.uk">Oliver P</a> has justÂ  released a little game. Its catered for a very specific, yet popular, crowd. Yes yes its a dress up game, but it has very nice graphics so I think its definately worth a mention <img src='http://mikecann.co.uk/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><a href="http://mikecann.co.uk/wp-content/uploads/2009/07/mochimonkeydressup.swf"></a><object width="400" height="400" data="http://mikecann.co.uk/wp-content/uploads/2009/07/mochimonkeydressup.swf" type="application/x-shockwave-flash"><param name="src" value="http://mikecann.co.uk/wp-content/uploads/2009/07/mochimonkeydressup.swf" /></object></p>
]]></content:encoded>
			<wfw:commentRss>http://mikecann.co.uk/flash/monkey-dressup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Monkey Mines &#8211; Sneak Peek</title>
		<link>http://mikecann.co.uk/flash/monkey-mines-sneak-peek/</link>
		<comments>http://mikecann.co.uk/flash/monkey-mines-sneak-peek/#comments</comments>
		<pubDate>Fri, 03 Apr 2009 15:51:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Actionscript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Personal Projects]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.mikecann.co.uk/?p=409</guid>
		<description><![CDATA[After monts of work my next game is very almost done, and im pretty damn proud of this one. Just hunting about for sponsorship deals then I release. Until then here are a few piccies:]]></description>
			<content:encoded><![CDATA[<p>After monts of work my next game is very almost done, and im pretty damn proud of this one. Just hunting about for sponsorship deals then I release. Until then here are a few piccies:</p>
<p><img class="alignnone" src="http://www.mikecann.co.uk/Images/MonkeyMines/1.png" alt="" width="597" height="497" /><img class="alignnone" src="http://www.mikecann.co.uk/Images/MonkeyMines/2.png" alt="" width="597" height="497" /><img class="alignnone" src="http://www.mikecann.co.uk/Images/MonkeyMines/3.png" alt="" width="597" height="497" /></p>
]]></content:encoded>
			<wfw:commentRss>http://mikecann.co.uk/flash/monkey-mines-sneak-peek/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

