您的位置: 首页 > 技术文档 > 多媒体制作 > Flash 区块游戏开发
Flash MX 2004 pro 帮助 CHM 版 回到列表 如何防止SWF文件被反编译
 Flash 区块游戏开发

作者:qhwa 时间: 2004-05-22 文档类型:原创 来自:蓝色理想

第 1 页 欢迎
第 2 页 为什么用方块?
第 3 页 地图
第 4 页 关于地图的东西
第 5 页 创建方块
第 6 页 再谈谈区块原型的定义
第 7 页 英雄/主角
第 8 页 键盘控制的移动
第 9 页 碰撞检测
第 10 页 芝麻开门-地图切换
第 11 页 跳跃
第 12 页 腾云驾雾
第 13 页 梯子
第 14 页 愚蠢的敌人
第 15 页 更多关于敌人的东西
第 16 页 射击
第 17 页 拾取物品
第 18 页 浮动区块
第 19 页 卷屏
第 20 页 未完待续 | coming soon

平台上的敌人

如果你需要在平台上面放一个巡逻的敌人,就像这样:

只需要写几行就行了。敌人可以来回巡逻,碰到边缘的时候会自动折回。这个需要敌人检测下一个落脚点方块的通行性:

getMyCorners (ob.x+ob.speed*ob.xMove, ob.y+ob.speed*ob.yMove+1, ob);
if (!ob.downleft and !ob.downright) {

注意一下这里的一个很重要的数字:1。 (ob.y+ob.speed*ob.yMove+1)加1是为了检查英雄脚下面的方块。还有要注意的是只有当downleft和downright都是true的时候,才能继续向前走,否则就掉头走。

下载本例的源文件


教给敌人一些窍门

碰到障碍物可以改变方向,而不是简单的回头走。

让我们修改一下enemyBrain函数。以前是简单的将ob.xMove和ob.yMove取相反数,现在我们给他一个随机的新方向:

ob.xMove = random(3)-1;
if (ob.xMove) {
 ob.yMove = 0;
} else {
 ob.yMove = random(2)*2-1;
}

一旦敌人接触障碍物,xMove就会得到一个随机的数值(-1,0或1,random(3)会返回0,1或2)。如果生成的xMove值是0,我们就设置yMove为1或-1。
random(2) : 0 或 1
random(2)*2 : 0 或 2
random(2)*2-1 : -1 或 1
如果生成的xMove值是1,那么就把yMove值设置成0,然后重新生成xMove值。

下载本例的源文件

这样就好多了,但是如果我们还可以优化一下,我们应该避免与原来相同或相反的方向。

代码:

} else {
  if (ob.xMove == 0) {
    ob.xMove = random(2)*2-1;
    ob.yMove = 0;
    getMyCorners (ob.x+ob.speed*ob.xMove, ob.y+ob.speed*ob.yMove, ob);
    if (!ob.downleft or !ob.upleft or !ob.downright or !ob.upright) {
      ob.xMove = -ob.xMove;
    }
  } else {
    ob.xMove = 0;
    ob.yMove = random(2)*2-1;
    getMyCorners (ob.x+ob.speed*ob.xMove, ob.y+ob.speed*ob.yMove, ob);
    if (!ob.downleft or !ob.upleft or !ob.downright or !ob.upright) {
      ob.yMove = -ob.yMove;
    }
  }
}

这回我们先检查当前的方向。例如,如果原先是垂直移动(xMove==0)那么我们让xMove为1或-1,然后让yMove为0。但是如果敌人在地图的拐角处,他的新方向可能会让他再一次撞上墙。这就是为什么我们要调用getCorners函数来检测障碍物,如果有障碍物,掉头走。

下载本例的源文件

Ok,这回敌人更加聪明了一些,因为玩家不能预知他遇到障碍物后的行走方向。但是你也注意到了,这个傻小子只会去撞墙然后改变方向。如果你的地图中有大范围的空白区域,玩家很难保证敌人能经过那里。最好的例子是一个大房子,英雄站在中间,那么敌人永远也抓不到他。

我们赋予敌人自动转向的能力,即便他没有遇到障碍物。

我们在他的原型中添加一个turning属性来表征转向的能力。

turning表示的是敌人每行走一步时转向的可能性。0代表永远不会转向,100表示每步都要转向(你可别千万这么做)。

更改一下if判断

if (ob.downleft and ob.upleft and ob.downright
 and ob.upright and random(100)>ob.turning) {

如果random(100)的值小于ob.turning,就换一个新的方向,就算本来能够继续往前走。

下载本例的源文件

出处:蓝色理想
责任编辑:qhwa

上一页 愚蠢的敌人 下一页 射击

◎进入论坛Flash专栏版块参加讨论

相关文章 更多相关链接
Flash 酷站猎手
中文ID3乱码问题MX解决方案
用AS2解决中文ID3的乱码
Flash常用效果-移动模糊效果
Flash MX 2005 制作环境预览
作者文章 更多作者文章
中文ID3乱码问题MX解决方案
Flash 区块游戏开发
Flash 中如何显示清晰的字体
JavaScript 和 Flash 的通信
在 ListBox 组件中应用 HTML
热门搜索:CSS Fireworks 设计比赛 网页制作 web标准 用户体验 UE photoshop Dreamweaver Studio8 Flash 手绘 CG
站点最新 站点最新列表
全兼容的纯CSS级联菜单要点浅析
CSS Sprites 图片整合技术
雅安,一场中式旅行
热烈祝贺"醒狮杯"圆满结束
菊花宝典大赏大奖教程《阳台》
交互设计师怎样和产品团队合作
Photoshop打造个性潮流音乐海报
简单解读面包屑
CSS盒模型
Apple与Microsoft网站可用性研究
栏目最新 栏目最新列表
safari 4 新特性
Photoshop制作精美高光流线字
IE下img多余5像素空白解决方法
XHTML1.0与HTML兼容指引16条
JavaScript优化细节
全兼容的纯CSS级联菜单要点浅析
CSS Sprites 图片整合技术
Photoshop打造个性潮流音乐海报
CSS盒模型
45度地图编辑器及游戏开发心得
>> 分页 首页 前页 后页 尾页 页次:15/201个记录/页 转到 页 共20个记录

蓝色理想版权申明:除部分特别声明不要转载,或者授权我站独家播发的文章外,大家可以自由转载我站点的原创文章,但原作者和来自我站的链接必须保留(非我站原创的,按照原来自一节,自行链接)。文章版权归我站和作者共有。

转载要求:转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印,亦不能抹去我站点水印。

特别注意:本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有,文章若有侵犯作者版权,请与我们联系,我们将立即删除修改。

本文总共有 28 条评论,现在显示最新的 5 条。评分:- llllllllllllllllllll + 评分人数: 7 ,平均分: 5.00


autodesker Publish at 2009-2-23 16:24:22
又一年过去了……还是没有下文呀~~
ye2325875 Publish at 2008-1-1 18:06:00
求求站长了,把后面的都翻译过来吧,谢谢了。
-----------------------------------------
支持``
ghyh22 Publish at 2006-7-25 0:42:03 评分5
支持,强烈支持
太感谢了
像得到宝一样高兴
hack86 Publish at 2006-7-16 22:18:18 评分5
求求站长了,把后面的都翻译过来吧,谢谢了。
qhwa Publish at 2006-1-12 22:55:57
回复:oring
Math.floor((y+ob.height-1)/game.tileH 有-1和没有-1算出来是不同的方块了


oring Publish at 2005-6-7 10:49:37 评分5 删除评论
请问:
ob.downY = Math.floor((y+ob.height-1)/game.tileH);
ob.rightX = Math.floor((x+ob.width-1)/game.tileW);
为什么 “y+ob.height-1“和“x+ob.width-1“ 这边要减1?
---
我有试过如果把-1去掉,差别就出来了。 始终想不出这微妙的-1是什么意思?

查看全部评论

您的评论
用户名:  口令:
说明:输入正确的用户名和密码才能参与评论。如果您不是本站会员,你可以注册 为本站会员。
注意:文章中的链接、内容等需要修改的错误,请用报告错误,以利文档及时修改。
不评分 1 2 3 4 5
注意:请不要在评论中含与内容无关的广告链接,违者封ID
请您注意:
·不良评论请用报告管理员,以利管理员及时删除。
·尊重网上道德,遵守中华人民共和国的各项有关法律法规
·承担一切因您的行为而直接或间接导致的民事或刑事法律责任
·本站评论管理人员有权保留或删除其管辖评论中的任意内容
·您在本站发表的作品,本站有权在网站内转载或引用
·参与本评论即表明您已经阅读并接受上述条款
推荐文档 | 打印文档 | 评论文档 | 报告错误  
专业书推荐 更多内容
《Web标准设计》
《美工神话》
《Flash短片轻松学》
Illustrator CS3质感绘画表现技法
大师之路--Photoshop 完全解析
《用户体验要素》
HTML与CSS入门经典(第7版)
作品集 更多内容

华贸提案 Flower 美女一张。 变态金刚 GenNext网站 华硕(Asus)手机 Zt23 胡椒下班 变态金刚