# 計概 HW11 作業說明文件 [[文章連結]](https://hackmd.io/b94oMK_pQ_GhSNHHMld7XA) ## 作業描述 相較於HW10,這次添加了道具、背包的功能。每個player都會有一個獨立的道具背包,當遇到怪物時,才會觸發使用道具的功能,且只能在遇到怪獸時,啟用道具,戰鬥過程不能更換或使用道具。當該玩家擊敗特定怪獸時,會掉落特定道具到玩家背包。此外,在地圖中發現寶物時,所有玩家會個別給予不同道具。 ## 程式操作 1. 輸入玩家個數: 遊戲開始時,會要求使用者輸入玩家個數,程式會根據玩家個數,製作每場對決的怪獸數量,以下方圖片為例,若玩家為3人,則之後對決都會有隨機3個怪獸產生。  2. 地圖移動: 如同HW10說明,a向右、d向左、w向上、s向下。當遇到字符`M`時,觸發與怪獸的對決。當遇到字符`$`發現寶箱,各個給予玩家道具。  若玩家想要快速移動,可以藉由輸入一連串的方向控制鍵,即可快速移動。  3. 發現寶箱: 發現寶物時,分別給予各個玩家 **一個** `Life Potion`或`Magic Potion`,機率各為50%。並顯示當前背包狀況。如下圖所示,OrcPlayer、KnightPlayer都獲得`Life Potion`,而MagicianPlayer獲得`Magic Potion`。  4. 使用道具: 當遇到怪獸時,首先詢問玩家是否使用道具,如下圖,輸入y則進入道具選擇畫面、輸入n則直接開始戰鬥。  在選擇道具時,如下圖所示,<font color=red>紅色</font>標示代表目前選取道具,輸入s則裝備該道具。輸入a、d控制選取道具的游標。輸入n表示不裝備任何道具。各個玩家會依序選擇裝備道具,所有玩家選擇完後,開始戰鬥。  5. 怪獸對決: 首先玩家先開始攻擊,輸入a為普通攻擊、輸入s為特殊攻擊。戰鬥畫面,綠色表示攻擊者、紅色表示被攻擊者。下圖為Orcplayer attack Goblin。  下圖為Goblin attack Orcplayer。  下圖表示Orcplayer擊敗Goblin,則Goblin掉落道具`Axe`,查看Orcplayer背包,發現多了一個`Axe`。  各個怪獸遇到的機率、掉落道具是不同的,如下表所示: |怪獸|遇到機率</br>(Battle.cpp fight())|掉落道具</br>(Battle.cpp monsterLeave())| |:--:|:----:|:--:| |Goblin|80%|50% Tunic Armor</br>50% Axe Weapon| |Zombie|10%|50% Life Potion</br>50% Shield Armor| |JWMaster|10%|50% Magic Potion</br>50% Sword Weapon| ## 尚未實現功能 1. 目前道具、背包功能都是正確的。但缺少良好的使用者閱讀畫面,待HW12完成。 2. 怪獸實力隨玩家等級上升而上升 3. 在走路過程中也要能查看背包,而不單只是遇到事件才查看 4. 進入不同地圖 以尚未實現功能皆不是HW11要求。
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up