五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

RPGMakerMV探秘08-插件分析1(添加鳴謝)

2020-11-03 15:14 作者:狂奔小菜雞  | 我要投稿

????????在RPGMakerMV探秘07-游戲標題界面中,我們對標題界面有了一個初步的認識,本文通過一個插件實例,來鞏固下標題界面。

????????本文將使用MOG_Credits.js插件進行分析,這是一個在標題界面中提供“鳴謝”命令的插件。

????????插件的使用方法我們就不贅述了,我們主要看下插件的代碼。

插件相關描述

????????寫代碼是個技術活,同時也是個藝術活兒。一份好的說明文檔,一段詳細的注釋或者良好的代碼風格,能夠讓使用者或者自己賞心悅目,對于代碼的邏輯也能相對較快的分析出來。

????????閑話少說,上圖看到是注釋部分,一般包括插件描述、基本參數(shù)描述、幫助信息、資源路徑及版本信息等。從上面這一段描述我們就能清楚的了解到,插件的作用,使用方法等。當然這不是一個強制性的約束,每個人都有自己的風格,但是我們最好能形成自己的風格,提高代碼的可閱讀性。

????????接下來進入正題:

參數(shù)

????????我們在使用插件的時候,經(jīng)常都會設置一些參數(shù)。而這些插件的相關參數(shù)就會隨著插件的啟用存儲在plugins.js中。plugins.js中的數(shù)據(jù)是完全由RPGMaker生成的,沒有特殊情況,不會主動去編輯這個文件。每個啟用的插件都會生成一條json串,其中一個對象parameters就存儲了開發(fā)者設置的關于該插件的參數(shù)。而上文的代碼便是讀取參數(shù)值。

????????在RPGMakerMV探秘07-游戲標題界面中,我們知道在標題界面命令窗口中新加一個目錄,需要做三件事,1、commandList中新加命令

????????????????????????????????2、commandWindow中新加事件處理

????????????????????????????????3、事件處理的具體操作內(nèi)容

????????下面我們根據(jù)這三條分別看下對應代碼: ????

commandList

????????commandList是由Window_TitleCommand的makeCommandList創(chuàng)建的,這里重寫這個方法,加上我們自己的命令。但是在這之前調(diào)用了原來的makeCommandList,因為這里面還創(chuàng)建了包括了“開始游戲”、“繼續(xù)游戲”等命令。這里還使用了上文中我們讀取到的參數(shù)。

commandWindow

????????commandWindow的重寫與commandList大同小異,都是調(diào)用父類方法,然后新增自己的改動。不影響原始功能,又實現(xiàn)了自己的定制化需求。

command

????????該部分為先關閉了命令窗口,然后用場景管理器SceneManager的push操作切換到了Scene_MCredits場景中。push操作我們可以去rpg_managers.js中去看實現(xiàn),將現(xiàn)場景壓入棧中,然后使用goto切換場景,如果需要切回來,則可以使用pop將棧頂?shù)谝粋€場景彈出,回到原場景。

????????RPGMaker的原始場景都定義在rpg_scene.js中,Scene_MCredits并不屬于原始場景,這個場景是開發(fā)者自定義的,接下來的代碼便是Scene_MCredits場景的定義。? ????

01

????????首先創(chuàng)建了Scene_MCredits的構造函數(shù),構造函數(shù)基本沒做什么。通過Object.create實現(xiàn)對Scene_MenuBase的繼承,Scene_MenuBase是菜單類場景的父類,具體要繼承哪個父類,需要根據(jù)自己場景所需實現(xiàn)的功能而定,同事時也需要了解rpg_scene中各個場景的一些基礎功能。如果再往上追溯,他們都有共同的基類Scene_Base(其實Scene_Base也是繼承Stage),這里就不再展開。

02

????????這里我們看到了一個熟悉的方法create,上一篇文章我們在分析Scene_Title的切換過程時,我們提到過create方法。在重寫的create方法中,新增了自己的需求createPictureCredit。

而該方法的具體實現(xiàn)就是在場景中添加各種資源,例如資源文件、場景中位置、資源透明度等。 ??? ?

03

????????該部分pressAnyKey是對觸摸及按鍵的檢測,供下方的update調(diào)用。同樣我們從上篇文章知道了周期調(diào)用函數(shù)update的作用。他會在場景生命周期內(nèi),不停的進行調(diào)用。在不停調(diào)用的情況下:

this.pictureCredit[1].opacity?+=?1;//透明不斷改變

this.pictureCredit[1].y?-=?this._creditsSpeed;//圖片位置不斷上移

????????如果觸發(fā)按鍵檢測,pop到標題界面。

????????如果圖片超出畫面,pop到標題界面。

????????如果設置了背景圖片,設置為不可見。

????????通過周期函數(shù)update的調(diào)用,一個完整的“鳴謝”場景便“動”了起來,還能接收玩家的操作。

????????以上便是MOG_Credits.js的分析,通過插件的使用,再配合代碼的分析,能夠更快了解插件的運作機制。

????????下篇我們再利用插件把標題界面做得更“酷炫”一點,同樣基于代碼分析。

????????



注:以上分析均為作者興趣出發(fā),自學有感,對于js的認知還存在不足或者偏差,如有錯誤,歡迎指正。

????????

RPGMakerMV探秘08-插件分析1(添加鳴謝)的評論 (共 條)

分享到微博請遵守國家法律
台山市| 津市市| 万载县| 临泉县| 界首市| 浦县| 花莲县| 洛阳市| 麦盖提县| 惠州市| 车险| 浦江县| 海原县| 敦化市| 深州市| 莱芜市| 河池市| 洛南县| 东丽区| 阳原县| 高邑县| 新安县| 乳山市| 青海省| 黔西县| 隆回县| 渝中区| 安化县| 敦化市| 株洲县| 淮北市| 浦县| 祁东县| 清涧县| 榆树市| 济源市| 加查县| 太原市| 建阳市| 通道| 玉树县|