-
永谷 弘宣
『Bullet Time』は、映画のワンシーンのように飛んでくる弾丸を避けるスクリーンセーバーです。
【操作】
キー入力 : スクリーンセーバーを終了する
【更新履歴】
2018/03/15 初版公開
【ソースコード解説】
《変数》
S : String, Style, 主人公の姿勢( 0 ~ 2 )
T : 主人公が取るべき姿勢( 0 ~ 2 )
N, Z : 一時変数(弾道の軌跡の表示に利用)
I, J : Iterator, ループ変数
《配列》
[0] : 高い弾道の弾丸の X 座標
[1] : 低い弾道の弾丸の X 座標
《PCGパターン》
#E0 ~ #E5 : 主人公の姿勢 0 のキャラクタ(横 2 文字 x 縦 3 文字の合計 6 文字)
#E6 ~ #EB : 主人公の姿勢 1 のキャラクタ(横 3 文字 x 縦 2 文字の合計 6 文字)
#EC ~ #EE : 主人公の姿勢 2 のキャラクタ(横 3 文字 x 縦 1 文字の合計 3 文字)
#7B0 〜 : 主人公の姿勢 0 の文字列
#7C2 〜 : 主人公の姿勢 1 の文字列
#7D4 〜 : 主人公の姿勢 2 の文字列
《コード》
5 : タイトル
10 : 初期化
20 : 使用する PCG パターンのアドレス値のゼロ埋め
30 : 主人公の姿勢 0 のキャラクタパターン定義
40 : 主人公の姿勢 1 のキャラクタパターン定義
50 : 主人公の姿勢 2 のキャラクタパターン定義
60 ~ 70 : 主人公の姿勢の文字列定義
80 : スクリーンセーバー開始時の初期設定
90 : キー入力受付
100 : T の算出
110 : 主人公の描画
130 : 通り過ぎた弾丸の配列の初期化
140 : 弾丸の配置
150 : 弾丸を進める
160 : 弾丸の描画
170 ~ 210 : 弾道の軌跡の描画