不知道有多少人童年是在红白机、世嘉rpg游戏是什么机下长大的那些经典的rpg游戏是什么如:魂斗罗,超级玛丽世嘉的战斧、怒之铁拳等等一系列的经典。如今那些经典嘚记忆已经随着时间的冲刷慢慢减淡了。
今天就来看看如何使用phaser引擎制作一款rpgrpg游戏是什么
是不是满满的回忆(●'?'●)。
制作一款rpgrpg游戏是什么需要先制作一张地图看过前面的教程,相信大家都可以制作一款自己的地图来我这里在保存地图的时候选择的保存格式是json格式。
先上两张场景的代码前面的教程里有很多介绍,这里只解释一下没有碰到过的功能
game.load.tilemap加载我们制作的地图,因为我保存的时候选择的格式是json格式所以最后一个参数是Phaser.Tilemap.TILED_JSON,还有一种选项是Phaser.Tilemap.CSV表示地图文件是csv格式的前一个参数是json数据对象,我们这里没有设为null。
接下来在rpg游戏昰什么场景中preload方法里做一些初始化操作
这里初始化角色的跳跃、行走的参数。
现在添加地图到场景中
addTilesetImage第一个参数是我们制作地图的时候选择图块时给图块起的名称,第二个参数是我们已经加载的图块图片
setCollision和setCollisionBetween指定图块中哪些图块区域要做碰撞检测,那它的参数是怎么回倳呢看下图解释。
- 如图解释这个图块里的小图块是从左上角开始的,第一小块的索引是1如果不确定它的宽高,可以使用鼠标来点击選中选中后有高亮区域,就能确定小图块的区域比如金币的索引是11(数出来的)。
- 如果有图片是几块拼起来的比如烟囱,那么它所鼡到的几个小图块都要做碰撞检测
- 主角图片资源是个序列图集。
- 前4张是朝左跑的动画后4张是朝右跑的动画,中间那张是静态状态下的圖片
- rpgrpg游戏是什么地图会比较大,默认是主角走到哪就显示哪部分所以让摄像机跟随主角。
现在该到碰撞检测和rpg游戏是什么输入了
- 这裏为了方便,图片上只制作了一个图层实际开发rpg游戏是什么的时候,注意不同用途的图片要分开放到不同的图层比如边界用的放一个圖层,不做碰撞检测的用一个图层特殊用的再放一个图层(比如金币)。这里在主角跟金币碰撞后只是把金币隐藏了并且取消了这个金币的碰撞检测,强制让引擎重绘图层后金币就看不到了
最后是update里对主角的一些控制。
- 主角跟图层做碰撞检测不然主角会掉出屏幕。
- 主角跳跃需要条件不能在跳的过程中按下上方向键还能继续跳,不合理
- 左右跑动,这部分比较简单就是x轴上移动一个距离。
- 如果主角掉出屏幕重置到初始位置。
到这里rpgrpg游戏是什么就完成了,想象力丰富的你会开发一款什么样的rpgrpg游戏是什么呢?欢迎交流讨论