最近比較多教學文章,都是因應上架後遇到許多玩家的問題而產生的一些分享。
這篇也不例外,因應RMMV在steam中開啟後,無法直接使用截屏功能因此做了一個熱鍵截屏功能
功能簡介
添加熱鍵P可以直接截取遊戲畫面,並且自動存檔
適用對象
– RMMV + 輸出單機版的作者
– 遊戲丟到Steam 發現無法用Steam功能拍照,又希望玩家可以拍照的作者
開始
STEP 1:
第一步我們先來增加按下P鍵時的對應功能,
這邊利用關鍵字 onKeyDown 可以搜索到SceneManager.onKeyDown這個功能
按照慣例,我們先把整段複製下來
接著利用 網站找出我們要使用的熱鍵,這個範例中我們用」P」來作為拍照熱鍵。
若不了解switch case 用途的夥伴,請上網爬個文章,印象會更深刻w
STEP 2:
接著,我們加入一個用來拍照的方法且在按下keycode = 80時 調用
暫時命名 playerSnapShop()
STEP 3:
接著就是實際拍照要做什麼事情了。
在這邊我們使用的概念是利用SceneManager先暫存目前畫面
所以我們添加2個function,一個用來暫存,一個用來取用並且清除
STEP 4:
最後,我們來撰寫將暫存的畫面存成圖片的功能
前半段,我們先將會用到的功能初始化,並取得遊戲目前的路徑
接著,設置好我們想保存的路徑,這邊使用 screenshot 作為範例
把最終路徑塞到 last_path 中,這邊看看圖片中的說明會比較清楚
再來,不要睡著。我們快到最後階段了:)
在圖片命名的部分,為了方便我們使用」現在時間.png」 來命名,使用的是unix time
並且將文件轉換成保存圖片的格式
.
最後,我們利用最前面的 fs.existsSync(last_path) 檢查有沒有這個文件夾路徑
沒有的話就mkdirSync來自動創建
.
.
一切就緒之後,利用fs.writeFileSync 將圖片存到指定的路徑
最後一行的 alert(…) 則是每當玩家按下拍照按鈕時,就會跳出一個框告訴玩家圖片保存的路徑
方便玩家進行查找,不想使用的話也可以註解掉:)
最後提供插件全圖
.
收工!下課!
Q:為什麼不直接提供插件
A:此系列教學比較偏向一起動手做,根據粽子自學的經驗。程序這種東西還是要自己多動手寫,即使是照抄你也會慢慢熟悉,慢慢了解。因此想要學習寫插件的小夥伴自己動手寫一遍吧!
此外眼中的世界EarlyAccess 版本目前已支持此功能
使用影片的部分有空時再來補上