引用遊戲的開頭畫面:
遊戲連結(有網頁版與下載版):https://gamejolt.com/games/rockypunky/472628
網頁版的音效設定會怪怪的,所以建議用下載的
這遊戲是為了參加某個10天的GameJam做的(肝痛...)
放上哈扣畫面:
(一開始不會這麼難,把Boss血條打一半後才會)
而且遊戲也是有故事的!
放上遊戲CG圖第一張,剩下的去遊戲裡面看><
(不過對話是英文的)
操作:
WASD 移動
上下左右鍵 射擊
E 使用地板上的道具
Q 丟棄武器
Space 撿起武器
遊玩方式:
每個武器有對應的符號,用武器照怪物頭上的符號順序打掉他們(左到右)
還有...別死!!
開發雜談:
自從認識"Event"之後,我的視野又加大好幾倍了!
再那之前,我都是用抽象類別的方式偵測和執行方法,但往往越後面就被呼叫的越複雜,常常為了知道到底是誰在呼叫這個方法而往上回朔三、四個腳本。
我覺得使用event的好處就是能大大降低腳本間的耦合力,讓實作的方法與呼叫他的函數都待在同個腳本內,且需要的時候才使用,不需要的時候就可以丟掉。
此外,我還學到(debug修到開悟)該如何比較正確的使用Coroutine,以前開始一個Coroutine之後都只會等到他條件到自己結束,但這樣的忽視到後面就會累積成開發的惡夢! 比較好的方法應該是用一個Coroutine變數紀錄開始了哪個Coroutine,在OnDestory或者是重複呼叫時先停止前面的Coroutine再使用,如此能減少許多不必要的Error Log出現,也比較能掌控目前正在執行的Coroutine。
以我這個專案為例,Boss移動是用corotinue指定目標地點後,在每個fixedupdate時間往目標移動一點點距離。一開始就是因為沒有管控呼叫中的corotinue,僅用自訂的isMoving布林值檢查是否在移動,到後期需要呼叫這移動corotinue有三個時機:(1)隨機走動、(2)暴衝招式、(3)壓迫招式。
若是時候使用暴衝招式了,但Boss隨機走動的coroutine還沒結束,這樣要碼放棄本次的暴衝招式,要碼硬著頭皮使出招式,這樣就有2個移動的方法在互相打架了! 更何況還有第三個招式。 ......也許之後在寫篇日記介紹更多(debug辛酸史)
還有之前說的event心得文,我先讓肝冷卻幾天再寫吧! (rimworld也出更新了XD)
對了,我置頂的自介文更新了一點點