2010年11月20日土曜日

ドリームキャスト起動画面のジェネレータ作ってみた

ドリキャスの起動画面をFlashで再現してみた。

DC startup generator

生成されたURL(http://www.aaharu.com/dcdata/DC.swf?w=eJzzSM3JyddRCM8vyklRBAAfngRqなど)に飛べば、その文字列をいつでも再現できます。

Flashのソースコードも公開してあります。
Python(GAE)のコードの一部がこれ。
class GenerateHandler(webapp.RequestHandler):
    def post(self):
        form = self.request.get('words')
        if len(form) < 2:
            path = os.path.join(os.path.dirname(__file__), 'index.html')
            self.response.out.write(template.render(path, {'alert': "2文字未満は未対応です・・・"}))
        else:
            form = zlib.compress(form.encode('utf_8'))
            form = b64encode(form)
            self.redirect("../dcdata/DC.swf?w="+form)

GETでswfに文字列を渡しているのですが、流れとしては
HTMLのformで文字列をPOSTで送信→Pythonでzlib(gzip)圧縮→PythonでBase64エンコード→GETで渡す→swfでGET受信→ActionScriptでBase64をByteArrayにデコード→ByteArrayを解凍→文字列に挿入
て感じです。ちょっと違う?

0 件のコメント:

コメントを投稿