炎々:GAEによるランキングに対応

=前置き=

この前作ったパズル「炎々」を、GAEによるスコアランキングに対応させてみた。

=ページ=

http://enen-pazzle.appspot.com/で確認可能。

Googleアカウントでログインすると、そのアカウントの名前が使われる。
ログインしなければ、「No Name」という名前が使われる。

右側にランキングが表示されるが、自動更新はしないので、ページ全体を更新しないとランキング表が最新のものにならないので注意。

=コード=

今回のコードは以下のところにUpした。(SVNのやつ)

http://o-healer-projects.googlecode.com/svn/trunk/Flex/EnEn/

アップロードの際に不要なデータが混入しないように、AS3の方のコードやフォントは外してある。AS3の方のサンプルはPyamfとたいして変わらないので、そっちの方を参照のこと。(接続先が、〜/apiになる点は注意)


追記:Flash側のコードもUpした。

http://o-healer-projects.googlecode.com/svn/trunk/Flex/EnEn_Flash/

フォントだけ外してある。フォントは梅フォントの等倍のやつを利用中。


=GAEを使う際の注意点=

ちょっと詰まったところがあるので、GAEを使う際の注意点を少し。

=日本語をPythonコードに含めてはいけない=

(使用する方法があるらしい。コメ欄参照)


Pythonのコードに(コメントも含めて)日本語を入れていると、「500 Server Error」になって動いてくれない。
なので、Pythonのコメントは英語だけで書く必要があり、Pythonで日本語表示を扱うようなものは難しいと思われる。(ただ単に外部の日本語データを格納する程度なら可能だと思われるが、Python内に日本語を書くようなものはムリっぽい)

=Pyamfを使うPythonコードは、メインページとは別にする=

Flashを直に表示する場合はPyamfを使うサンプルそのままで良いが、FlashをHTMLに埋め込んで表示する場合は「HTMLを表示するスクリプト」と「Pyamfに応答するスクリプト」は分ける必要がある。(もしかしたら分けなくてもできるのかもしれないが、今回はわからなかったので分けた)

ここでは「〜/api」にアクセスしたら「Pyamfに応答するスクリプト」を実行し、普通にアクセスしたら「HTMLを表示するスクリプト」を実行するようにした。

=今後の予定=

去年のGAEテストからだいぶ間があいてしまったものの、ようやく「アクションエディタで作ったステージをGAEで共有する」というのができそう。


ということで、アクションエディタのGAE対応をやっていく予定。ただ、今年中にできるかどうかは不明。