2009年にC言語で書いたゲームをRustで移植したものです。
https://do7be.github.io/innocent_heart/
https://github.com/do7be/innocent_heart/tree/c
- ジャンプ時に天井を突き抜ける
- ジャンプできないタイミングがある(ジャンプ連打を無効化した際に発生)
- ジャンプ時に微妙に壁を昇れるタイミングがある
- 天井が横ぎりぎり当たる位置でジャンプするとすり抜けて上に乗れる
- エンディング後に色々リセットできていない
- 重いので、横移動で床があるかの判定を高速化する(現在の場所から 1/2 タイルサイズ分下の 2 タイルに壁があるかチェックするようにする)
- 武器の速度調整
- プレイヤー
- 敵
- ボス
- 各種 Z 軸の表示優先度調整
- 敵の武器をプレイヤーより前にする
- WebGL で最初に画像を表示するときにロードが走るので一瞬透明になる
- 画面上にジャンプで行けてしまう
- コンテニュー時のボスの出現タイミングやライフの表示タイミングが原作と違う
- たまに画像が表示されない
- ソード
- サンダー
- 武器の残弾数
- 武器ドロップ
- レッドデーモン
- 弾
- プレイヤーの方向に撃つ
- 発射間隔
- ウィザード
- 弾
- 発射間隔
- すべての敵配置
- 画面外の敵は動きを止める
- 画面外から再び画面内に入ったら敵は復活
- エンディング
- ボスの位置まで到達したら StageStatus を Boss にする
- ボス戦に入ったら敵を全消去する
- ボスの体力が 0 になったらエンディング
- ボスがダメージを受けたら点滅
- ボスの体力を表示
- ボスの行動全般
- 移動
- ブルーファイア
- ウォーターバルーン
- ダークサンダー
- メテオ
- ボス戦入ったらコンテニュー時の位置変更
- WebGL
- コントローラー
- canvas を中央に設置する
- 操作方法を記載
https://github.com/do7be/innocent_heart/tree/js