スポンサーサイト

--. . --
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ParaFlaソース ver fd3.0.2 (内部処理詳細)

2008. . 15
後で見返せるようにしたメモです。
どちらかというと手順書みたいなことになってますが。。
< 譜面計算 >

▽ function load_tune()

・ 譜面ファイルの読み込み
  - この際に必要なスプライト名を一緒にキープしておく

・ 矢印数の算出
  - AutoOnigiri のボーナス計算に使用します
     変数「allOni」は全矢印数に占めるおにぎりの数の割合

・ 途中再生といろいろ補正
  - 速度変化(途中変速)の補正
     例 ) &startFrame=1000 のとき
        &speed_data=400,2,600,1.5,1200,1 だったら
        &speed_data=1100,1.5,1200,1    に変えます
     途中変速の場合、各フレームの速度が意味を持つのでここで補正しておきます

・ 各オブジェクトが最後に出てくる場所の取得
  - 速度変化(途中変速)のため


▽ function storage_spd()

・ 各フレームの速度を配列へ
  - 具体的には↓
      _root.speedTmp=[2,2,2,2,2,....,4,4,4,4,4,4,....,3,3,3,3,3];
     のように、各フレームにおける速度が入ってます
     配列サイズがとても大きいので使い終わったら消します

  - ちなみに、上限速度を超える速度が入った場合には
     上限速度に設定し直します


▽ function motion_spd()

・ Sp.Motion でどのくらい余計に移動するか計算
  - Sp.Motion が「OFF」のときはスルー
     _root.mot_array には各フレームで余計に移動する座標を入れます
     枠外にはみ出ることがあるので
     ステップゾーン上に矢印が来たときの配列番号は「15」に
      _root.mot_array[13] ← ステップゾーン通過後2フレーム
      _root.mot_array[15] ← ステップゾーン通過時
      _root.mot_array[17] ← ステップゾーン通過前2フレーム


  - ちなみに、「Boost」は初期速度に依存して速くなりますが
     「Brake」は初期速度に関係なく同じ関数を使います


▽ function push_tune()

・ どのタイミングで矢印を出すか逆算し配列へ
  - _root.start_point, _root.fstart_point :各矢印が出現するフレーム数
     _root.frzLength : フリーズアローの長さ
     _root.initY : 矢印の移動距離(端数が出る可能性があるため)
     _root.judgeY : 矢印がステップゾーンに到達するまでにかかるフレーム数
     _root.bstTime : ↑でストップを除いたフレーム数

・ 速度変化(途中変速)部分の整理
  - _root.speedTmp のままでは配列がでかすぎるので整理
        _root.arr_spd=[500,1.5,700,2,1000,0.5,...];
     のような形に戻します


▽ function get_start(j,k,num,header) / function get_boost(k,num)

・ 規定距離に達するまでのフレーム数取得
  - function push_tune の中で行われる関数で、内部処理のメイン
     逆算してどのタイミングで矢印を出せばいいか調べます

  - Sp.Motion の余計に移動する分も考慮するため、
     Sp.Motion を「Boost」「Brake」にすると
     矢印がステップゾーン到達にかかるフレーム数は通常に比べ小さくなります


▽ function getfrzlength(j,k)

・ フリーズアローの長さ取得
  - function push_tune の中で行われる関数で、こっちも内部処理のメイン
     出現するフレームから終わりのフレームまででどのくらい進むか調べます


▽ function del_temporary()

・ 不要になった変数を削除
  - 途中再生で、前のほうの矢印情報は要らないので削除
     その他、直接関係ない譜面データなどはここで一掃


ちなみに、storage_spd, push_tune関数は
dotさんのソースをかなり参考にしています。
スポンサーサイト

comment

post comment

  • comment
  • secret
  • 管理者にだけ表示を許可する

trackback

trackbackURL:http://alprime.blog91.fc2.com/tb.php/94-16feaa13
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。