TileBased Game Develop 区块游戏开发
原文地址: www.tonypa.pri.ee/tbw/index.html
作者: Tony
翻译: MoonFun.qhwa
欢迎
这是用Macromedia Flash制作区块游戏(tile based games)的教程。这些教程很大部分是在OutsideOfSociety的基础上写的,有时间就去看看吧,他们是你能找到的最好的教程之一。
这些教程需要你知道一些actionscript和Macromedia Flash的知识。如果你以前没有做过任何游戏的话,可能看起来有些吃力。而且由于我的英语不是很好,可能会有些错误,或者某些地方解释得不是很清楚。很抱歉,我尽力了。如果你找到一些bug或者错误,请告诉我。
我使用Flash 5制作代码和源文件,主要是我习惯了Flash 5,顺手罢了。这些代码和源文件在Flash MX(6)中也可以很好地运行,没有问题。Flash MX 2004(7)和as2不兼容旧的actionscript,所以代码可能会出错,也有可能会很好,但是通常来说,如果你真的使用AS2,你应该自己利用OOP重新一遍代码。这些原理,当然了,你仍然可以使用,所以这些教程还是值得一看的。
这里用到的实例代码和源文件都是免费的。你可以任意修改,按你自己的意思使用。
希望有人可以从这些教程中得到帮助
谢谢
为什么用方块?
在开始埋头编写代码之前,让我们稍微谈谈区块/方块游戏(tile based games)。为什么要使用方块?是区块游戏更容易制作吗?或许还是他们比基于艺术的游戏(art based games)更复杂?Flash适合区块游戏吗?
在很久很久以前,方块技术已经被应用到游戏制作中。那时候,电脑还没有上GHz的cpu,没有上百MB的内存。缓慢的速度、有限的内存意味着,游戏制作者不得不使用他们的脑子来发明聪明的办法,让游戏看起来更棒,而且更快。
比如,你想在你的游戏中加入漂亮的背景,但是图片太大了,而且使得你的游戏变得很慢。怎么办?把图片切成方块!
在上图中,你可以看到图片的某些部分是完全一样的。1和4是一模一样的,2和3是一样的,5到9都是完全一样的。如果你把图片切割开来,重复使用相同的部分,你就已经在应用方块了。这个大图片比方块的文件大小大多了。实际上,你用4块不同的方块就可以画出了这个图片。
方块还有其他一些不错的特性,当你想要替换部分背景,那么你不需要重新绘制所有的东西,你只要改变1个方块就行了。你还可以重复使用方块,创建不同的对象。比如,你可能有草地的方块,还有花的方块,当你需要在草地的背景上放几朵花时,只需要把原来地方的草换成花就行了。
Flash 和方块
我们都知道,Flash是基于矢量的,所以Flash生成的文件体积更小,而且可以无限缩放。因此,我们一点都不需要方块来制作游戏吗?好吧,用Flash你可以很容易地做一个基于艺术的游戏(art based games),但是当你的游戏区域增大时,或者你想要更多的特性时,你可能会遇到麻烦。许多东西用区块游戏来做是如此简单(立体视角,寻找路径和深度排序)。不要忘记,区块游戏已经存在了很长一段时间,许多理论对于Flash来说依然适用。
用Flash做区块游戏也有不太舒服的地方,我们用不上许多绘图功能和时间线的部分,我们的游戏是通过actionscripot制作的,基本上,我们要写大量的代码来创建、移动、修改舞台上的图片。
用位图作为区块也是一个好主意。是的,我们可以在Flash中绘制所有的东西,用矢量图也可以,但是当游戏运行的时候,播放器需要计算屏幕上的矢量数据,我们可不希望有什么东西弄慢了我们的游戏。位图在播放以前是预先渲染的,而且通常情况下他们更好看。如果你想在Flash中导入位图作为方块,通常最好的做法是把图像存为带透明背景的GIF文件(用于各种对象,比如花等)
枯燥的讲话到此结束,让我们做点东西吧
首先,我们来看看怎样存储我们的地图。
myArray=["a", "b", "c", "d"];
a=["a1", "a2", "a3"];b=["b1", "b2", "b3"];c=["c1", "c2", "c3"];myArray=[a, b, c];
myVar=myArray[2];
myVar=myArray[2][0];
myVar=myArray[0][1]
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] 下一页
共有 0 位网友发表了评论,得分 0 分,平均 0 分 查看完整评论