Show page source of 関数一覧 #96374

= 関数一覧
[[PageOutline]]
== adddblock(xx, yy, sxx, syy, tp) 落下ブロック追加
 * xx : X座標
 * yy : Y座標
 * sxx : 速度(X)
 * syy : 速度(Y)
 * tp : ブロックの種類

== addtblock(xx, yy, tp, lr) タワーブロック追加
 * xx : X座標
 * yy : Y座標
 * tp : ブロックの種類
 * lr : 左または右 (お皿の場所)

== addcblock(xx, yy, sxx, syy, sr, tp) 破損ブロック追加
 * xx : X座標
 * yy : Y座標
 * sxx : 速度(X)
 * syy : 速度(Y)
 * sr : 回転速度
 * tp : ブロックの種類

== addsceff(xx, yy, sca, scb) スコア演出追加
 * xx : X座標
 * yy : Y座標
 * sca : スコア基本値
 * scb : スコア倍率

== drawnumber(xx, yy, num, keta) 数値文字描画
 * xx : X座標
 * yy : Y座標
 * num : 数値
 * keta : 桁数(0埋めする)

== サブルーチン
=== *moveplayer (プレーヤー・移動)
=== *drawplayer (プレーヤー・作画)
=== *collisionblocks (積んであるブロックと落下ブロックの接触判定)
=== *checktowerbalance (積みタワーブロック・バランス判定)
傾きを計算する。計算式は以下のとおり
{{{
傾き=
 現在の傾き × 0.95
 +移動速度 × 0.002
 +(左の重量 - 右の重量) × 0.003
}}}
 * 現在の傾きから時間計で若干補正される
 * 左右に動くと揺れる
 * 左右の重量差で大きく傾く

=== *checktowerbreak (積みタワーブロック・崩壊判定)
傾きが BALANCE_THREATHOLD を超えていればタワー崩壊
=== *drawbackdrop (背景・作画)
 * 背景を描画
 * スコアを描画
 * ハイスコアを描画
 * レベルを描画
 * タイムを描画
 * 残時間警告を描画
=== *moveblockgeneral (ブロック・移動)
破壊ブロック演出 / 落下ブロック すべてを移動する
=== *drawblockgeneral (ブロック・作画)
破壊ブロック演出 / 落下ブロック / 積みブロック すべてを描画する
=== *destroyalltower (積みタワー完全破壊)
お皿以外の積んでいるブロックをすべて破壊し、破壊ブロック演出を生成する
=== *destroyalldrop (落下ブロック完全破壊)
お皿以外のブロックをすべて破壊し、破壊ブロック演出を生成する
=== *movesceff (スコア演出処理)
スコア演出を更新
=== *drawsceff (スコア演出表示)
スコア演出を描画
=== *savehiscore (ハイスコア保存)
ハイスコアが更新されていたらハイスコアを保存
=== *savescreen (スクリーンショット保存)
screenshot000.bmp~ という名前でスクリーンショットを保存