ミニゲーム: ToDo リスト
概要
ToDo リストは、ミニゲーム API 上で日常タスクを管理しながら、完了時に EXP や追加報酬を配布できるユーティリティです。
タスクの作成・編集・削除、繰り返しタスクの達成記録、報酬の自動付与まで、すべてが単一画面で完結します。
すべてのタスクデータはブラウザーの localStorage
(キー mini_todo_tasks_v1
)に保存され、再起動後も復元されます。
画面構成
- ヘッダー
- 画面左上にタイトルと当日のローカライズ済み日付が表示され、右側には「未完了/完了/達成回数」の統計が自動更新されます。 統計はタスク一覧の描画時に計算され、完了処理や達成処理のたびに反映されます。
- 登録フォーム
-
タスク登録用のフォームでは以下の項目を設定できます。
- 名前(最大 32 文字)。未入力の場合はロケールに合わせた「名称未設定」が自動で適用されます。
- タイプ:単発(完了/失敗で終了)または繰り返し(達成ボタンで回数を積み上げる)。
- EXP 変化量:整数で入力し、正の値で報酬、負の値で没収を表現できます。数値は ±99,999,999 の範囲に丸められます。
- 追加報酬:パッシブオーブ・アイテム・SP を個別に有効化できます。選択肢はプレイヤー API の所持情報や既存タスクから自動収集され、保存済み ID も候補に復元されます。
アイテム個数はマイナス値で没収、SP は正の値のみ、パッシブオーブは 1 以上の個数が必要です。 - カラー:カード左端に表示する識別色をカラー入力で指定します。
- メモ:最大 256 文字までの自由記述欄です。
- タスク一覧
- 「未完了」と「完了済み」の 2 セクションに分かれ、見出しはクリックまたは Enter/Space キーで折りたたみできます。 未完了は作成日時の昇順、完了済みは完了日時の降順で並び、タスクが存在しない場合は空メッセージが表示されます。
タスクの追加と編集
- フォームに必要項目を入力し、「追加」または Ctrl+Enter で保存します。
- 既存カードの「編集」を押すとフォームに内容が読み込まれ、「更新」モードに切り替わります。
- 「キャンセル」で編集中の状態を解除し、新規登録モードに戻せます。
- 「削除」は確認ダイアログの後にローカル保存からタスクを削除します。
タスクカードには識別色、メモ、作成日時、完了日時(または繰り返し回数)が表示され、タイプや報酬の内容に応じてチップが追加されます。
タスクの進行管理
未完了タスクには以下の操作ボタンが表示されます。
- 達成(繰り返しのみ):達成回数を 1 増やし、設定した EXP と追加報酬を即座に付与します。タスクは未完了のまま維持されます。
- 完了:ステータスを成功にし、完了日時を記録します。EXP と報酬が付与され、完了済みリストへ移動します。
- 失敗:ステータスを失敗にし、報酬は発生しません。完了済みリストへ移動します。
- 編集/削除:未完了の状態で内容を変更したり削除したりできます。
完了済みカードには「編集」「削除」のみが残り、再度の報酬付与は行われません。完了済みカードには成功/失敗バッジが表示されます。
EXP や報酬の配布は playerApi
が提供されている場合に自動で呼び出され、SP 調整・アイテム付与/没収・パッシブオーブ付与に対応しています。
保存とローカライズ
タスクの追加・更新・完了処理のたびに自動保存され、ページを離れてもローカルストレージから復元されます。
UI テキストや日付書式は I18n
サービスに追従して即時に更新されるため、言語を切り替えても継続して利用できます。
利用のヒント
- アイテム ID やオーブ ID を直接入力して保存すると、次回以降の候補に自動追加されます。
- マイナス EXP や負のアイテム個数を設定すると、未達成時のペナルティを表現できます。
- タスクカラーを活用してカテゴリ別にグループ化すると、リストの視認性が向上します。
- 大量のタスクがある場合は、セクション見出しを折りたたんでスクロール量を削減してください。