2018年5月9日 星期三

「傘之下」開發記錄—09

除了HP外,遊戲中還設置了「健康值」
這個「健康值」是「當下雨時,沒打開雨傘就會扣減」
所以這是三段有關聯的程式組合而成的系統(「健康值」、「下雨系統」、「雨傘系統)
但因為一次講完的話會太長,所以這次只講「健康值」和「下雨系統」

首先是下雨系統的部分
整個系統都是以協程來計算時間
當日照時間完結,便開始下雨,反之亦然

日照時間開始計算前,主要關掉下雨特效即可
而下雨時間開始前,要關掉原先的BGM,改播放下雨音效,同時開啟下雨特效

如果單單只有下雨特效,整體氛圍會略有不足
因此在兩個協程之間,加了陰天的協程
主要控制一塊陰天的畫布,來增加視覺效果

當然這個陰天畫布,也可以直接寫在「日照/下雨」的協程裡
但因為下雨前和下雨後的陰天時間,亦是氣氛渲染的一部分
獨立成一個協程的話,可以有更為彈性的變化


當現正身處下雨時間的話,名為Raining的布林值變為true
Raining = true的時候,若果沒打開雨傘,每3秒扣減一點健康值……
……好吧,其實是扣0.005的健康值www
為甚麼是這個數字,和我所使用的圖像有關係
健康值的圖示,原圖是一個圓環,但因為只需顯示1/4,所以FillAmount的上限為0.25
(測試過原圖直接用1/4,但Filled會出現問題,因此只能調小數值)
健康值原本設定上限是50,每次扣減1。在經過換算之後,就變成現在的0.005

總而言之,健康值每次會扣減相應數值
當數值跌至一定程度時,圓環顏色會更改,以提示玩家
與HP一樣,健康值是讀取共用腳本的數值,來修改圖像自身的顯示
這樣在管理及調整方面更為方便

沒有留言:

張貼留言