forked from scratchfoundation/scratch-gui
-
-
Notifications
You must be signed in to change notification settings - Fork 16
Closed
Description
概要
Issue #417 の Step 2: データモデル・DB設計を実装します。
スモウルビー甲子園の競技システムに必要なデータベーススキーマとActiveRecordモデルを設計・実装します。
実装内容
1. マイグレーション作成
- PlayerAi モデル用マイグレーション
- GameMap モデル用マイグレーション
- Game モデル用マイグレーション
- GameRound モデル用マイグレーション
- GameTurn モデル用マイグレーション
- Player モデル用マイグレーション
- Enemy モデル用マイグレーション
- GameEvent モデル用マイグレーション
2. ActiveRecord モデル実装
- PlayerAi モデル (name, code, author, expires_at等)
- GameMap モデル (name, map_data, map_height, goal_position等)
- Game モデル (first_player_ai, second_player_ai, status等)
- GameRound モデル (round_number, players, enemy, status等)
- GameTurn モデル (turn_number, players, enemy, events等)
- Player モデル (position, score, status, items等)
- Enemy モデル (position, hp, attack_power等)
- GameEvent モデル (event_type, data等)
3. バリデーション・アソシエーション設定
- 各モデルの適切なバリデーション設定
- モデル間のアソシエーション設定 (belongs_to, has_many等)
- enum設定 (GameStatus, PlayerStatus等)
4. シードデータ作成
- プリセットAI (goal, item, item_goal) のシードデータ
- マップ (map1〜map10) のシードデータ
- 開発用テストデータ
5. テスト作成
- モデルの基本的なunit test
- バリデーションテスト
- アソシエーションテスト
データベーススキーマ設計
PlayerAi
GameMap
Game
完了条件
- 全てのマイグレーションが正常に実行できる
- 各モデルのバリデーション・アソシエーションが正しく動作する
- シードデータが正常に投入できる
- 基本的なモデルテストがパスする
関連Issue
- [スパイク]スモウルビー3から実行可能なスモウルビー甲子園の実行環境を設計する #417 [スパイク]スモウルビー3から実行可能なスモウルビー甲子園の実行環境を設計する
- [Step 1] 基盤環境構築 #418 [Step 1] 基盤環境構築
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Status
Done