• 沒有找到結果。

學生專案互評

(一) 組別成果一

自評

組員:B10732001 B10732015

請簡述你在執行專案過程中遇到的問題: 5/21 陳藝安 PlayCharacter

5/22 陳藝安 PlayMonster & 遊戲流程(缺敏捷值比較) 5/26 現階段剩餘工作分配

6/5 陳藝安 將 monsterData.h 的 vector<monster>data 移至 public, moster 補上 setELITE

6/5 林杰翰 monster 針對 Player 數目更改的功能撰寫完畢 6/8,9Debug

6/10 完成專案

小組互評第一組

組員:B10815027 B10815029

優點:

組員:B10815001 B10815023 優點:

小組互評第三組

組員:B10732011 B10732025 優點:

1.影片經過剪輯,雖無說話但呈現清楚 DEBUGMODE 2.影片結尾祝福每位在水深火熱的學生們,相當溫馨

組員:B10732011 B10732025

請簡述你在執行專案過程中遇到的問題:

1. 類別交互引用導致編譯錯誤

解決方法:前置宣告,或是參數設成 pointer。

2. 類別的成員變數在 copy constructor 、constructor、destructor 容易漏東漏西

解決方法:每新增一個 data member 都去更新這些函式 3. 讓門打開

解決方法:確認開門條件:回合結束(RoundEnd)場上怪物死亡(MonsterInRank.empty())

角色站在門上(charaterOnDoor)

4. 偵測門 尤其很多扇門在同個關卡跟門有直的橫的

解決方法:每次在開門事件時都搜尋輸出的地圖(mapTemp)的門的位置,跟觸發開門事

件角色所在的位置,讓那些門變成地板,再重新搜尋可見範圍更新輸出的地圖

(mapTemp)

5. 判斷視野

解決方法:線性插值法

6. Coding Style 不同

解決方法:我們統一大括號在下面、變數名稱要令之前先讓組員知道,或註解

7. 因為是一個人負責地圖主程式跟一個人負責角色怪物,所以要馬上理解對方的思維並不容易

解決方法:多互相偵錯幾次就很熟悉了。角色怪物那些都需要等程式完成後才能偵錯。

8. 程式碼整合的困難

解決方法:參考第十八組的 VS LiveShare 方法,以及使用 gitHub。

9. 小組討論效率的困難

解決方法: 訂定每周進度。

10. 題目文意理解困難

解決方法:詢問同學跟助教以及看測資比對。

11. 怪獸依種類抽卡

解決方法:紀錄已抽牌的怪獸種類,當輪到下一個怪獸抽牌時,先比對此種類是否已抽過

牌, 若已抽過就複製那張卡牌的 index(我們在怪獸的 class 中有一個 data member 紀錄當 回手牌 index),沒抽過就呼叫抽牌的 function。

12. 程式架構角色/怪獸動作的 function 不知道要放哪個類別

解決方法:原本把這些 function 放在卡牌中的 Action 類別中,後來發現這些 function 要牽 涉到許多其他的物件(特別是 attack),會需要大量傳入,因此改為架構在遊戲那層

(Gloomhaven),就可直接使用當層的 private data

13. 每個新關卡開啟時裡面的怪獸卡牌狀態要繼承前面關卡同一種類怪獸的狀態

解決方法:在每次紀錄使用手牌時,紀錄在 MonsterInGame(整個遊戲的怪獸陣列),而

不是 MonsterInRank(當回合可見範圍內的怪獸)

小組分工:

B10732011: 主程式、角色怪獸的動作跟流程、偵錯、Demo 影片 B10732025: 主程式、地圖視野判斷流程、偵錯、Demo 影片 討論紀錄(紀錄進度):

小組互評第一組

組員:B10815023 B10815001 優點:

組員:B10815027 B10815029 優點:

組員:B10830025 B10815035 優點:

相關文件