好久没写了,海贼王游戏继续,伟大航路,伙伴们,新世界等着我们,出发吧
打开工程,发现接着上期的工程已经做好了,现在就把思想传递给大家
今天我们实现最初步的横版模型
即三层背景,加上背景音乐的效果
先看看结果吧
有没有事成相识的感觉?有没有很激动?那么下面开始吧!!!
1.首先准备好素材,背景海军上校基地一张图片,这张图片是自己通过视频截图再ps的结果
2.基地前面的白云,选png无背景的图片
3。房子,商店,玩过DNF的朋友应该很熟了吧(左右必须无缝连接的图片)
4.2个NPC,在那跳街舞呢,需要什么人物自己可以增加。
5.一首海贼王背景音乐
开始写程序了
一。在初始化屏幕对图片进行初始化
第三层背景图片 = 引擎:载入图片("Dat/第四层/1.jpg")
第三层背景精灵 = D2D_精灵.创建(第三层背景图片,0,0,841,629)
云背景图片 = 引擎:载入图片("Dat/第四层/云.png")
云背景精灵 = D2D_精灵.创建(云背景图片,0,0,512,512)
云偏移=0
第二层背景图片 = 引擎:载入图片("Dat/第三层/1.png")
第二层背景精灵 = D2D_精灵.创建(第二层背景图片,0,0,895,206)
地面图片 = 引擎:载入图片("Dat/地面.jpg")
地面精灵 = D2D_精灵.创建(地面图片,0,0,588,286)
舞男图片=引擎:载入图片("Dat/舞男.png")
舞男动画=D2D_动画.创建(舞男图片,93,12,0,0,122,125)
舞男动画:播放()
舞女图片=引擎:载入图片("Dat/舞女.png")
舞女动画=D2D_动画.创建(舞女图片,85,12,0,0,110,113)
舞女动画:播放()
二。由于npc也是动态的
所以屏幕逻辑开始也要对他进行更新
舞男动画:更新(dt)
舞女动画:更新(dt)
路飞静止动画:更新(dt)
路飞跑动画:更新(dt)
路飞踢动画:更新(dt)
路飞拳动画:更新(dt)
路飞档动画:更新(dt)
路飞跳跃动画:更新(dt)
三。背景图片三层需要呈现相对运动,由于物体远近视觉感官不同
所以远处的物体几乎不动,近处的物体相对运动快,而浮云也就在那飘,自己感觉云怎么飘,其他都浮云了
for n=1,4 do
第三层背景精灵:显示(0,-110+画面偏移.y)
end
云背景精灵:显示()
for n=1,4 do
地面精灵:显示((n-1)*588 + 画面偏移.x*1.5,320)
end
for n=1,4 do
第二层背景精灵:显示((n-1)*895 + 画面偏移.x*1.5 , 150+画面偏移.y)
end
舞男动画:显示_高级(1250+画面偏移.x*1.5,292+画面偏移.y,0,0.5,0.5)
舞女动画:显示_高级(1280+画面偏移.x*1.5,293+画面偏移.y,0,0.5,0.5)
以上几行代码就能实现三层背景的相对运动,是不是很神奇呢?
npc动画显示这就不解释了,前面的章节讲了
来看看第三层背景的显示 for n=1,4 do表示一个for循环,从1开始到4,每次做下面的动作后加1,到4为止
后面几层背景类似,但是要计算好for循环的上线,也就是为什么是1到4,不是其他
你可以粗劣的计算,本张背景的长度*n>游戏界面的长度就行。
画面偏移是如何计算的前面章节也讲了,至于画面偏移x乘的参数要看你自己希望的相对运动确定。
四。显示背景音乐
背景音效 = D2D_音效.创建("Dat/背景音效.ogg")
背景音效:播放_高级(40,true)
就这么2句即可,如果你希望路飞不同的动作发出不同的打击声音,那你得多找几个他的音效
if(动作)判断音效播放即可。
好了今天游戏先到这,但做到这里还只完成了游戏的开张篇
后面要靠我们自己的想象去编剧情,编事件,编关卡,血条,boss,小怪
而且我们目前是将怎个游戏界面,游戏人物,游戏物件都放在一个lua文件中
随着游戏的复杂,人物对象的增加,肯定非常混乱
所以面向对象的思想必须在游戏中去体现。本期下载:点击打开链接 点击打开链接
为了海贼王的梦想,我们出发吧!!
为了做真正实用的游戏,所以我开始学习vc++游戏开发
详情看我的其他博客
按我一开始的期望,用vc写个海贼王出来!!
(时间真不留人,傍边有很多同学准备考研。。而我也处于两难选择,还有一年毕业。后面情况看机遇了,加把劲学啊!!)