プロセカ、ガルパなどのスマートフォン音楽ゲームは、
- クリアした
- フルコンした
- APした
など白黒はっきりわかる結果は、ゲーム内で用意されているアイコンによって示される。
しかし、
- フルコンできそうな曲はどれか
- APできそうな曲はどれか
などの状態を把握するには、スクショを撮るなり別の管理が必要になる。
そこで今回は、せっかく学んだFlutterを使ってスコア(精度)を管理するアプリを作成した。
アプリの全体像
曲ごとに欲しい情報は
- クリア状況(画像の🌟部分)(状態としては、未クリア、クリア、フルコンボ、APを想定)
- 曲名
- GREAT数
- GOOD数
- BAD数
- MISS数
1曲ずつ入力して、1曲ごとに保存する。
PERFECT数は数値が大きく、入力が煩雑になるため今回は入力対象外とした。
また、右上の「+」を押下することにより、曲の追加も行える。
モーダル画面で曲の追加画面が表示され、情報を入力し「追加」ボタンを押下すると、
曲のリストに追加され画面がリフレッシュされる。
技術スタック
- フロントエンド:Flutter
- DB:SQLite
Flutterを使いたかったのと、DBはサーバを構築しないのと曲数が現状100に満たないので、ローカルストレージを採用した。
ローカルストレージ
今回は、曲の情報及びスコア(精度)の情報は、ローカルストレージに格納している。
その内容(.dbファイル)を「DB Browser for SQLite」で閲覧可能。
idはautoincrementで値が振られる。
課題
- simulatorを起動させているとパソコンがとても熱を帯びる。
- ローカルストレージファイルの本体の保存先が深いところにある。
- クリアマークを編集する機能を追加する。
- 楽曲のソートを追加する。
コメント