Flash Liteでゲーム制作のメモ

Flash Liteで、ゲームを作成したのでその時のメモを公開。
制作環境は、Flash8、言語使用はActionScript1.1でやった。

  • 何故ActionScript1.1だったのか?
    • 今回の利用者の想定対象がやや高齢者だったため。マーケティング的に携帯電話の買い換え需要が低くすでに持っている人は買い換えをしてないだろうと言う観点からやや古い1.1を利用。1.0では今後の拡張がむづいので反対したのも上げておく。
    • DoCoMoだと「700,701,702,703,704,800,851,901,902,903,904シリーズ」がその辺。
    • AUだと1.0の機種が無いためFlashが出来るなら1.1以上で動く。
  • ActionScript1.1の注意点
    • ベースがどうやらかなり古いActionScriptを継承しているらしく、様々な関数を使うことが出来なかった。
    • 環境としてはFlash Player 4がベースっぽい。
    • 携帯電話の環境だからフレームレートが高いと死ねる。12〜15くらいが妥当
    • 同様に処理が重くなる「アルファチャンネルの変更しながらアニメーション」も不適当。
    • Keyは「0123456789#*」に「決定」のみ。”on (release, keyPress "1") { 〜〜〜 }”ってな感じ。決定はシーン内にボタンが複数ある場合は避けること(どのボタン押したか判らん)
    • あと、キー操作でボタンは見せたくない場合は少し離れた位置に隠しボタンを配置して上のキー操作で行えるようにすると幸せ。
    • 変数宣言にVarは要らない。
    • フォントは埋め込むと読み出し容量でほぼ跳ねられる(DoCoMoだと100KBが限界)。なので、埋め込みフォント禁止。
    • バイスフォントが見やすいのは24px!!(結構重要)
    • プロパティはドットシンタックスの記述が可能
    • なのに、メソッドはドットシンタックスの記述が出来ん!
    • あと、ツリーの親子関係はスラッシュシンタックスを使った方が良いかもしれん
    • _root,_parentが使えるのに_thisが使えんとは何事か!
    • 文字連結は+じゃなくてaddで!
    • 文字列比較は eq で!
    • FSCommand()とFSCommand2()が使えるとかなり面白い物になる!
    • あとonCilipEvent(enterFrame)が使えん!(だってFlash5からの仕様だもん)
    • さらにsetInteravelも使えん!(〃)
    • 上記二つの回避方法は、2フレーム以上作成して後ろのフレームで一つ前に戻らせると言う方法で逃げる。(つまり、昔のやり方だね)
    • ボタンの選択は、基本が上から下、Y座標が同じ数値ならX座標が少ない方から(つまり左から右へ)選択されていく。
      • なので、環状に並んだボタンとかナンセンス。フレーム増やしてボタンをずらしている感覚を使わせるのが一番かも知れない。
    • functionが無いのでcallで代用
    • ボタンにインスタンス名が付けられない。(良い感じでエラー吐きよる)