<?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>*drawlogic &#187; pypy</title>
	<atom:link href="http://drawlogic.com/tag/pypy/feed/" rel="self" type="application/rss+xml" />
	<link>http://drawlogic.com</link>
	<description>interactive and game development technologies for the web - flash, flex, unity3d, silverlight, javascript</description>
	<lastBuildDate>Thu, 17 May 2012 13:12:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>AS3, Convert Python Code to Flex AS3 with flex-pypy</title>
		<link>http://drawlogic.com/2008/03/20/as3-convert-python-code-to-flex-as3-with-flex-pypy/</link>
		<comments>http://drawlogic.com/2008/03/20/as3-convert-python-code-to-flex-as3-with-flex-pypy/#comments</comments>
		<pubDate>Thu, 20 Mar 2008 08:11:42 +0000</pubDate>
		<dc:creator>drawk</dc:creator>
				<category><![CDATA[ACTIONSCRIPT]]></category>
		<category><![CDATA[ACTIONSCRIPT3]]></category>
		<category><![CDATA[ARCHITECT]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[BASEPLANE]]></category>
		<category><![CDATA[DEVELOPMENT]]></category>
		<category><![CDATA[DYNAMIC]]></category>
		<category><![CDATA[FLASH]]></category>
		<category><![CDATA[FLEX]]></category>
		<category><![CDATA[FUNCTIONAL]]></category>
		<category><![CDATA[HAXE]]></category>
		<category><![CDATA[MARKET]]></category>
		<category><![CDATA[OPEN SOURCE]]></category>
		<category><![CDATA[PROGRAMMING]]></category>
		<category><![CDATA[PYTHON]]></category>
		<category><![CDATA[STANDARDS]]></category>
		<category><![CDATA[TECHNOLOGY]]></category>
		<category><![CDATA[CODE]]></category>
		<category><![CDATA[flex-pypy]]></category>
		<category><![CDATA[pypy]]></category>

		<guid isPermaLink="false">http://drawk.wordpress.com/?p=170</guid>
		<description><![CDATA[I have officially been sucked into the Python vortex. I recently have really been digging IronPython, Jython and good old plain Python but have not ventured here yet. Google (They employ Guido), Microsoft (IronPython) and Sun (Jython) are all becoming infected pythonistas as well. But this is just too cool, Python to AS3 code with [...]]]></description>
			<content:encoded><![CDATA[<p>I have officially been sucked into the Python vortex.  I recently have really been digging IronPython, Jython and good old plain Python but have not ventured here yet. Google (They employ <a href="http://www.python.org/%7Eguido/" target="_blank">Guido</a>), Microsoft (<a href="http://www.codeplex.com/IronPython" target="_blank">IronPython</a>) and Sun (<a href="http://www.jython.org/Project/index.html" target="_blank">Jython</a>) are all becoming infected pythonistas as well. But this is just too cool,  <b><a href="http://code.google.com/p/flex-pypy/" target="_blank">Python to AS3 code with flex-pypy</a>. </b>This project is very young but could be fun, <a href="http://code.google.com/p/flex-pypy/source/browse" target="_blank">source at Google Code</a>.<b><br />
</b></p>
<p><a href="http://haxe.org/" target="_blank">Haxe</a> has a similar premise where it can compile to Flash6-9 versions of actionscript 2-3 which makes for a system with better reach. Python code for this is lots of fun and very flexible.  <a href="http://baseplane.com/2008/03/13/is-python-becoming-a-market-baseplane-language/" target="_blank">Python is becoming a baseplane language</a> and one great language for transcending platform lock-in.</p>
<p>Check out this snippet pulled from <a href="http://www.taniquetil.com.ar/py/chimp/chimp.html" target="_blank">here (click to see sample game) </a></p>

<div class="wp_syntax"><div class="code"><pre class="python" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">#/usr/bin/env python</span>
<span style="color: #483d8b;">&quot;&quot;&quot;
This simple example has very little to do with the pygame
chimp example, except that it will act the same (more or less)
and it uses the same resources, only they got converted to
mp3s, pngs.
&quot;&quot;&quot;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">#Import Modules</span>
<span style="color: #ff7700;font-weight:bold;">from</span> pypy.<span style="color: black;">translator</span>.<span style="color: black;">flex</span>.<span style="color: black;">modules</span>.<span style="color: black;">flex</span> <span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #66cc66;">*</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">class</span> MyRect:
    <span style="color: #ff7700;font-weight:bold;">def</span> <span style="color: #0000cd;">__init__</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>,x,y,w,h<span style="color: black;">&#41;</span>:
        <span style="color: #008000;">self</span>.<span style="color: black;">x</span>, <span style="color: #008000;">self</span>.<span style="color: black;">y</span>,<span style="color: #008000;">self</span>.<span style="color: black;">w</span>,<span style="color: #008000;">self</span>.<span style="color: black;">h</span> = x,y,w,h
&nbsp;
SCREEN_W = <span style="color: #ff4500;">468</span>
SCREEN_H = <span style="color: #ff4500;">60</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">class</span> Game:
    <span style="color: #ff7700;font-weight:bold;">def</span> <span style="color: #0000cd;">__init__</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>:<span style="color: #ff7700;font-weight:bold;">pass</span>
&nbsp;
    <span style="color: #ff7700;font-weight:bold;">def</span> init<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>,screen<span style="color: black;">&#41;</span>:
        <span style="color: #008000;">self</span>.<span style="color: black;">screen</span> = screen
        screen.<span style="color: black;">layout</span> = <span style="color: #483d8b;">'absolute'</span>
        screen.<span style="color: black;">setActualSize</span><span style="color: black;">&#40;</span>SCREEN_W, SCREEN_H<span style="color: black;">&#41;</span>
&nbsp;
        screen.<span style="color: black;">addEventListener</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">'mouseMove'</span>,mousemotion<span style="color: black;">&#41;</span>
        screen.<span style="color: black;">addEventListener</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">'enterFrame'</span>,do_loop<span style="color: black;">&#41;</span>
        screen.<span style="color: black;">addEventListener</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">'click'</span>,chimp_whip<span style="color: black;">&#41;</span>
&nbsp;
        <span style="color: #008000;">self</span>.<span style="color: black;">bg</span> = load_sprite<span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;py_background_png&quot;</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">;</span>
        <span style="color: #008000;">self</span>.<span style="color: black;">screen</span>.<span style="color: black;">addChild</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>.<span style="color: black;">bg</span><span style="color: black;">&#41;</span>
&nbsp;
        <span style="color: #008000;">self</span>.<span style="color: black;">chimp</span> = load_sprite<span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;py_chimp_png&quot;</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">;</span>
        <span style="color: #008000;">self</span>.<span style="color: black;">screen</span>.<span style="color: black;">addChild</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>.<span style="color: black;">chimp</span><span style="color: black;">&#41;</span>
&nbsp;
        <span style="color: #008000;">self</span>.<span style="color: black;">orig_y</span> = <span style="color: #008000;">self</span>.<span style="color: black;">chimp</span>.<span style="color: black;">y</span>
&nbsp;
        img2 = <span style="color: #008000;">self</span>.<span style="color: black;">fist</span> = load_sprite<span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;py_fist_png&quot;</span><span style="color: black;">&#41;</span>
        <span style="color: #008000;">self</span>.<span style="color: black;">screen</span>.<span style="color: black;">addChild</span><span style="color: black;">&#40;</span>img2<span style="color: black;">&#41;</span>
        img2.<span style="color: black;">move</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">400</span>,img2.<span style="color: black;">height</span>/<span style="color: #ff4500;">2</span><span style="color: black;">&#41;</span>
        <span style="color: #008000;">self</span>.<span style="color: black;">move</span> = <span style="color: #ff4500;">1</span>
        <span style="color: #008000;">self</span>.<span style="color: black;">spin</span> = <span style="color: #ff4500;">0</span>
        <span style="color: #008000;">self</span>.<span style="color: black;">hit</span> = <span style="color: #ff4500;">0</span>
        <span style="color: #008000;">self</span>.<span style="color: black;">hit_move</span> = <span style="color: #ff4500;">1</span>
&nbsp;
        <span style="color: #008000;">self</span>.<span style="color: black;">sfx</span> = <span style="color: black;">&#123;</span><span style="color: black;">&#125;</span>
        <span style="color: #008000;">self</span>.<span style="color: black;">sfx</span><span style="color: black;">&#91;</span><span style="color: #483d8b;">'whip'</span><span style="color: black;">&#93;</span> = load_sound_resource<span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;py_punch_mp3&quot;</span><span style="color: black;">&#41;</span>
        <span style="color: #008000;">self</span>.<span style="color: black;">sfx</span><span style="color: black;">&#91;</span><span style="color: #483d8b;">'nohit'</span><span style="color: black;">&#93;</span> = load_sound_resource<span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;py_whiff_mp3&quot;</span><span style="color: black;">&#41;</span>
&nbsp;
    <span style="color: #ff7700;font-weight:bold;">def</span> loop<span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>:
        img = <span style="color: #008000;">self</span>.<span style="color: black;">chimp</span>
        <span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: #008000;">self</span>.<span style="color: black;">spin</span>:
            <span style="color: #008000;">self</span>.<span style="color: black;">spin</span> -= <span style="color: #ff4500;">1</span>
            img.<span style="color: black;">rotation</span> = <span style="color: #008000;">self</span>.<span style="color: black;">spin</span><span style="color: #66cc66;">*</span><span style="color: #ff4500;">24</span>
        <span style="color: #ff7700;font-weight:bold;">else</span>:
            img.<span style="color: black;">x</span> += <span style="color: #008000;">self</span>.<span style="color: black;">move</span> <span style="color: #66cc66;">*</span> <span style="color: #ff4500;">8</span>
            <span style="color: #ff7700;font-weight:bold;">if</span> img.<span style="color: black;">x</span> <span style="color: #66cc66;">&gt;</span> SCREEN_W-img.<span style="color: black;">width</span>:
                <span style="color: #008000;">self</span>.<span style="color: black;">move</span> = -<span style="color: #ff4500;">1</span>
            <span style="color: #ff7700;font-weight:bold;">if</span> img.<span style="color: black;">x</span> <span style="color: #66cc66;">&lt;</span> <span style="color: #ff4500;">0</span>:
                <span style="color: #008000;">self</span>.<span style="color: black;">move</span> = <span style="color: #ff4500;">1</span>
&nbsp;
        <span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: #008000;">self</span>.<span style="color: black;">hit</span>:
            <span style="color: #008000;">self</span>.<span style="color: black;">hit</span> -= <span style="color: #ff4500;">1</span>
            <span style="color: #008000;">self</span>.<span style="color: black;">fist</span>.<span style="color: black;">y</span> += <span style="color: #ff4500;">6</span> <span style="color: #66cc66;">*</span> <span style="color: #008000;">self</span>.<span style="color: black;">hit_move</span>
&nbsp;
            <span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: #008000;">self</span>.<span style="color: black;">hit</span>  SCREEN_W - img_halfw:
        newx = SCREEN_W - img.<span style="color: black;">width</span>
    <span style="color: #ff7700;font-weight:bold;">if</span> newx  img.<span style="color: black;">x</span> <span style="color: #ff7700;font-weight:bold;">and</span> e.<span style="color: black;">stageX</span> <span style="color: #66cc66;">&lt;</span> img.<span style="color: black;">x</span>+img.<span style="color: black;">width</span>:
        game.<span style="color: black;">sfx</span><span style="color: black;">&#91;</span><span style="color: #483d8b;">'whip'</span><span style="color: black;">&#93;</span>.<span style="color: black;">play</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
        game.<span style="color: black;">spin</span> = <span style="color: #ff4500;">20</span>
    <span style="color: #ff7700;font-weight:bold;">else</span>:
        game.<span style="color: black;">sfx</span><span style="color: black;">&#91;</span><span style="color: #483d8b;">'nohit'</span><span style="color: black;">&#93;</span>.<span style="color: black;">play</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">def</span> flash_main<span style="color: black;">&#40;</span> x=<span style="color: #ff4500;">1</span> <span style="color: black;">&#41;</span>:
    game.<span style="color: black;">init</span><span style="color: black;">&#40;</span>castToWindow<span style="color: black;">&#40;</span>x<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://drawlogic.com/2008/03/20/as3-convert-python-code-to-flex-as3-with-flex-pypy/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

