遊戲說明
-
遊戲名稱:錢財冒險:理財智慧挑戰
-
遊戲背景:
玩家進入一個充滿奇幻與挑戰的理財世界,透過與不同的「魔王」對戰(預算魔王、儲蓄魔王、投資魔王),回答理財知識題目以獲取經驗值、金幣與升級。遊戲以答題與戰鬥相結合,透過回答正確,玩家對魔王造成傷害;回答錯誤則會受到魔王反擊,體現出學習理財知識的重要性。 -
核心流程:
- 標題畫面與玩家名稱輸入:玩家輸入名字後開始冒險。
- 城鎮畫面:顯示玩家狀態(等級、生命、攻擊、防禦、金幣、經驗)及可進行的活動(挑戰魔王、進入商店、休息)。
- 敵人選擇與戰鬥:玩家選擇要挑戰的魔王,進入戰鬥畫面。
- 提問理財問題:在戰鬥過程中,魔王會隨機提出題目,並搭配生成的插圖(透過 pollinations.ai API)。
- 回答與反饋:回答正確時,玩家造成傷害;回答錯誤則受損,並會顯示正確答案與解釋。
- 戰鬥結果與城鎮切換:若擊敗魔王,玩家獲得金幣與經驗;若被打敗則返回城鎮並以部分生命值復活。
- 商店與休息功能:玩家可用金幣購買道具提升能力,或支付金幣休息恢復生命值。
-
插圖功能:
每次進入理財問題畫面時,系統會根據題目描述自動生成一幅插圖,讓學習氛圍更加生動有趣。
程式設計重點
-
模組化設計
- 角色類別(Character):作為基礎類別,定義攻擊、生命值恢復等共通方法。
- 玩家類別(Player):繼承自角色,新增升級、購買物品、獲得經驗和金幣等功能。
- 敵人類別(Enemy):同樣繼承自角色,並加入題庫管理(questions、remainingQuestions、answeredQuestions),以便在對戰時隨機抽題並記錄已回答的題目。
- 物品類別(Item):定義商店中可購買的道具,並根據不同屬性影響玩家能力。
-
遊戲控制器(GameController)
- 集中管理遊戲狀態、場景切換與互動流程。
- 包含初始化敵人與物品、開始戰鬥、提問與回答問題、檢查戰鬥結果、更新戰鬥日誌等功能。
- 設計邏輯上分離各個功能區段,方便維護與擴充。
-
題庫管理與狀態記錄
- 每位魔王擁有自己的題庫,並透過
remainingQuestions與answeredQuestions管理題目狀態。 - 當所有題目均回答過後,系統自動重設題庫,確保遊戲持續運作。
- 每位魔王擁有自己的題庫,並透過
-
插圖生成功能
- 在
showQuestionScreen()中,根據題目內容產生一個圖片生成描述(prompt),並使用 pollinations.ai API(改用 image.pollinations.ai 並加入?nologo=true參數)取得圖片 URL。 - 將生成的圖片直接嵌入題目畫面,增加互動性與視覺效果。
- 在
-
使用者介面與事件處理
- 利用 JavaScript 操作 DOM,根據遊戲狀態動態更新畫面(例如:標題畫面、城鎮畫面、敵人選擇、戰鬥畫面、提問畫面、結果畫面與商店畫面)。
- 為各個互動元素(按鈕、選項)添加事件監聽,實現點擊後相應的邏輯流程切換。
-
視覺設計與響應式布局
- CSS 部分針對各畫面元件設計了統一風格與版面排版,並使用媒體查詢確保手機版呈現良好。
載入中...
魔王正在進食,很快就會出來...
