无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

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

RPGMakerMV探秘10-地圖顯示角色信息

2020-11-12 16:50 作者:狂奔小菜雞  | 我要投稿

????????先上圖,今天要實(shí)現(xiàn)的效果如下: ????

效果

????????今天的目的就是在地圖的左上角顯示角色(主角-隊(duì)伍第一)的主要屬性信息。

????????首先拆解一下,這塊信息都包含哪些元素:底層圖層、HP、MP、TP、EXP顯示條及數(shù)字、等級(jí)數(shù)字、角色名稱。像“生命”、“魔法”、“經(jīng)驗(yàn)”、“怒氣”、“等級(jí)”等中文字樣一般不會(huì)變動(dòng),那就可以直接畫在底層圖層上。基礎(chǔ)圖層如下:

基礎(chǔ)圖層

????????那么我們需要做的就是將圖層及其他要素放在對(duì)應(yīng)的位置,并利用周期函數(shù)改變?cè)氐娘@示。

????????為了實(shí)現(xiàn)上述的效果,我們使用MOG_ActorHud.js插件。該插件出現(xiàn)了一些我們之前沒有提到過的一些對(duì)象,如Game_System、Game_BattlerBase?、Game_Actor、Game_CharacterBase、Game_Interpreter、Spriteset_Map等。以Game為前綴的對(duì)象定義在

rpg_objects.js中,Spriteset_Map定義在rpg_sprites.js中。rpg_objects.js中定義的對(duì)象是對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的抽象,Spriteset_Map是地圖場(chǎng)景上精靈的合集。

????????我們需要在地圖場(chǎng)景上添加一些展示信息(精靈),而這些信息背后的數(shù)據(jù)來(lái)源于各個(gè)對(duì)象上的屬性。所以這個(gè)插件便是對(duì)這些對(duì)象的重寫及改造。

????????插件中構(gòu)建了一個(gè)新的對(duì)象Actor_Hud,繼承自Sprite。然后信息展示所有的資源都是添加到Actor_Hud上的,做update也基于Actor_Hud。

Actor_Hud

????????Actor_Hud的構(gòu)造如上,加載資源、清理過程數(shù)據(jù)。? ?

createActorHud

????????你可能想知道Spriteset_Map是在什么時(shí)候調(diào)用createUpperLayer而創(chuàng)建了我們需要的Actor_Hud對(duì)象。那就得看一看rpg_sprites.js了,Spriteset_Map繼承自

Spriteset_Base,Spriteset_Base在初始化時(shí)調(diào)用了createUpperLayer方法,而我們的地圖場(chǎng)景Scene_Map在加載地圖元素時(shí)會(huì)創(chuàng)建Spriteset_Map。

Scene_Map

????????接下來(lái)我們看下插件命令的定義:? ?

pluginCommand

????????插件命令的定義在插件中是非常常見的部分,定義插件命令后,我們可以很方便的在RPGMakerMV的事件頁(yè)中調(diào)用插件命令。如上圖,“show_actor_hud”、“hide_actor_hud”便是兩個(gè)插件命令,在事件頁(yè)中添加“插件指令”,只需要復(fù)制對(duì)應(yīng)指令,條件觸發(fā)時(shí),便會(huì)執(zhí)行相應(yīng)的代碼。這里的隱藏和展示我們的角色屬性信息使用起來(lái)很方便,假如我們進(jìn)入劇情階段或者進(jìn)入安全區(qū)域,我們不想展現(xiàn)角色屬性信息,一個(gè)命令便可以隱藏起來(lái)。切換到其他場(chǎng)景時(shí),打開即可。

????????Actor_Hud的另一個(gè)核心便是update。插件代碼的大概2/3篇幅都是圍繞update的處理。?

update

????????update方法看起來(lái)只有幾行代碼,但是其調(diào)用的方法,一層套一層,涉及每一個(gè)sprite的處理。要完全梳理其邏輯及數(shù)據(jù)結(jié)構(gòu)還是比較吃力的。

????????你如果仔細(xì)去看了每一個(gè)精靈的update算法,你會(huì)發(fā)現(xiàn),類似顯示條、數(shù)字、名字、等級(jí)等信息的update、create與上一篇中我們提到的MOG_SceneMenu.js插件中的幾乎差不多。其實(shí)你可以理解為把菜單場(chǎng)景的角色狀態(tài)信息展示到了地圖場(chǎng)景,做了一些資源的改動(dòng)和微調(diào)。




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


RPGMakerMV探秘10-地圖顯示角色信息的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
无极县| 陈巴尔虎旗| 兴文县| 商洛市| 承德县| 海伦市| 兴城市| 通许县| 城口县| 南漳县| 梅州市| 当阳市| 四会市| 茶陵县| 安丘市| 土默特右旗| 开平市| 宣恩县| 平阳县| 西城区| 静海县| 永年县| 泉州市| 宽城| 台北市| 游戏| 乐都县| 延长县| 厦门市| 陵水| 文成县| 贺兰县| 英山县| 罗田县| 康保县| 普兰店市| 利津县| 大悟县| 丰城市| 越西县| 海丰县|