摘要:準(zhǔn)備工作圖片素材角色精靈圖分為四個(gè)移動(dòng)方向地圖素材包含精靈圖和普通塊圖物品為普通塊圖人物素材包含和怪物的精靈圖游戲還在開(kāi)發(fā)中,怪物素材還不完整游戲初始化定義結(jié)構(gòu)并引入引擎初始化為引擎中的全局函數(shù)用于初始化。
準(zhǔn)備工作:圖片素材
hero.png
角色精靈圖分為四個(gè)移動(dòng)方向
map.png
地圖素材包含精靈圖和普通塊圖
goods.png
物品為普通塊圖
chara.png
人物素材包含npc和怪物的精靈圖(游戲還在開(kāi)發(fā)中,怪物素材還不完整)
定義dom結(jié)構(gòu)并引入lufylegend引擎
RPG loading...
初始化
LInit(50, "mylegend", 352, 544, main);
LInit為引擎中的全局函數(shù)用于初始化。
接收的參數(shù)按照順序分別為:fps、dom節(jié)點(diǎn)、寬、高、callback
執(zhí)行callback并加載圖片
var imgData = [{ name: "map", /*地圖*/ path: "./images/map.png" }, { name: "chara", /*人物*/ path: "./images/chara.png" }, { name: "goods", /*物品*/ path: "./images/goods.png" }, { name: "hero", /*英雄*/ path: "./images/hero.png" }]; function main() { LGlobal.align = LStageAlign.MIDDLE; LGlobal.stageScale = LStageScaleMode.SHOW_ALL; LSystem.screen(LStage.FULL_SCREEN); //準(zhǔn)備讀取圖片 loadingLayer = new LoadingSample3(); addChild(loadingLayer); LLoadManage.load( imgData, function (progress) { loadingLayer.setProgress(progress) }, gameInit ); }
LGlobal.align為畫(huà)布對(duì)其方式
LSystem.screen為縮放
LoadingSample3為加載動(dòng)畫(huà)的一種
LLoadManage.load進(jìn)行加載并做callback
這樣我們準(zhǔn)備的素材就被加載進(jìn)來(lái)了
詳細(xì)介紹請(qǐng)查看API
//預(yù)加載完成的圖片數(shù)組 var imgList = {}; //加載動(dòng)畫(huà)類型 var loadingLayer; //游戲?qū)?var layers = { back: null, mapview: null, things: null, effect: null, talk: null, }; function gameInit(result) { removeChild(loadingLayer); loadingLayer = null; imgList = result; //游戲?qū)语@示初始化 layerInit(); //游戲場(chǎng)景載入 drawInit(); // 游戲信息展示 drawGameInfo(); LEvent.addEventListener(LGlobal.window, LKeyboardEvent.KEY_DOWN, playerEvent); } function layerInit() { layers.back = new LSprite(); layers.back.graphics.drawRect(0, "#103820", [0, 0, LGlobal.width, LGlobal.height], true, "#012345"); addChild(layers.back); layers.back.x = 0; layers.back.y = 0; layers.mapview = new LSprite(); layers.back.addChild(layers.mapview); layers.things = new LSprite(); layers.back.addChild(layers.things); layers.talk = new LSprite(); layers.back.addChild(layers.talk); layers.effect = new LSprite(); layers.effect.y = 11 * globalData.size layers.back.addChild(layers.effect); }
加載完成后將加載動(dòng)畫(huà)移除,將返回的result存到全局變量imgList中
layerInit定義游戲?qū)樱枰⒁獾氖?strong>添加的順序會(huì)影響當(dāng)前層級(jí)的高度(類型z-index),后添加的較高
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/91408.html
摘要:和代表普通道路和墻,和代表星星和巖漿。用作裁剪接收?qǐng)D片對(duì)象起始坐標(biāo)和裁剪區(qū)域五個(gè)參數(shù)起始坐標(biāo)和裁剪區(qū)域可選用于創(chuàng)建圖像,可以添加到游戲圖層將指定尺寸按照指定行列進(jìn)行裁剪,返回一個(gè)二維數(shù)組生成動(dòng)畫(huà),每一行為一組動(dòng)畫(huà)。 繪制地圖前準(zhǔn)備 在繪制之前,我們先看一下地圖的數(shù)據(jù)實(shí)現(xiàn) globalData = { mapCol: 11, mapRow: 11, size: 32, f...
摘要:使用的引擎也是第一次寫(xiě)游戲,主要是興趣使然游戲體驗(yàn)地址未完成游戲設(shè)計(jì)游戲圖層設(shè)計(jì)游戲圖層分為了五層。游戲數(shù)據(jù)存儲(chǔ)將游戲涉及的所有數(shù)據(jù)存放到一個(gè)對(duì)象中,可以在后期很方便的做游戲進(jìn)度保存。其中為角色的屬性信息。 使用的引擎 lufylegend也是第一次寫(xiě)rpg游戲,主要是興趣使然游戲體驗(yàn)地址(未完成) 游戲設(shè)計(jì) 游戲圖層設(shè)計(jì) var layers = { back: null, ...
摘要:游戲開(kāi)發(fā)實(shí)戰(zhàn)主要講解使用來(lái)開(kāi)發(fā)和設(shè)計(jì)各類常見(jiàn)游戲的思路和技巧,在介紹相關(guān)特性的同時(shí),還通過(guò)游戲開(kāi)發(fā)實(shí)例深入剖析了其內(nèi)在原理,讓讀者不僅知其然,而且知其所以然。HTML5 Canvas游戲開(kāi)發(fā)實(shí)戰(zhàn)主要講解使用HTML5 Canvas來(lái)開(kāi)發(fā)和設(shè)計(jì)各類常見(jiàn)游戲的思路和技巧,在介紹HTML5 Canvas相關(guān)特性的同時(shí),還通過(guò)游戲開(kāi)發(fā)實(shí)例深入剖析了其內(nèi)在原理,讓讀者不僅知其然,而且知其所以然。在本書(shū)...
摘要:深度學(xué)習(xí)現(xiàn)在被視為能夠超越那些更加直接的機(jī)器學(xué)習(xí)的關(guān)鍵一步。的加入只是谷歌那一季一系列重大聘任之一。當(dāng)下谷歌醉心于深度學(xué)習(xí),顯然是認(rèn)為這將引發(fā)下一代搜索的重大突破。移動(dòng)計(jì)算的出現(xiàn)已經(jīng)迫使谷歌改變搜索引擎的本質(zhì)特征。 Geoffrey Hiton說(shuō):我需要了解一下你的背景,你有理科學(xué)位嗎?Hiton站在位于加利福尼亞山景城谷歌園區(qū)辦公室的一塊白板前,2013年他以杰出研究者身份加入這家公司。H...
閱讀 2536·2021-10-12 10:11
閱讀 1287·2021-10-11 10:58
閱讀 3353·2019-08-30 15:54
閱讀 783·2019-08-30 13:59
閱讀 730·2019-08-29 13:07
閱讀 1473·2019-08-26 11:55
閱讀 2206·2019-08-26 10:44
閱讀 2771·2019-08-23 18:25