网站大量收购独家精品文档,联系QQ:2885784924

Flash游戏开发教程:第3节.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Flash游戏开发教程:第3节Flash游戏开发教程:第3节.doc

Flash游戏开发教程:第三节 在具体讲解CLASS构造前,想花点篇幅帮小鸟们理解下CLASS是什么东东。   还是来举个例子,有一个机械战士的MC,这个MC里有机械战士完整的构造,手脚、身体、武器……   但这个机械战士仍然不能动,因为它只是一具机械,没有大脑程序告诉它该怎么走动,怎么攻击……   而我们做的“机械战士控制.as”的CLASS,绑定在这个战士身上。   这个CLASS可以看作为一个封闭的黑匣子,里面装载了指导机械人行动的程序,包括怎么移动、怎么攻击、怎么做事情A、怎么做事情B。   而这一切都是封闭在黑匣子里的,影响不到外界程序,外接程序也影响不到它。是个独立的东西。   这个黑匣子可以装载到任何一个机械战士身上,任何一个机械战士躯体的MC一旦绑定上这个CLASS,就能立即行动起来。   而且我们可以给这个CLASS做个外界可以调用的接口。   就像黑匣子上装了个可以给外界摁的按钮,你摁一次它就发一次绝招。  HYPERLINK /club/attachment.php?aid=745k=9fa6ed75e3f8cfd9e8bb8f571c88531bt=1237452904nothumb=yessid=23d1H5kAeWrv0%2F0%2FvTT%2BhtPL%2Bu2ROA0laRdZzYDHJnQup%2F8 \o 1.jpg \t _blank 下载 (36.79 KB) 2009-2-17 11:16 象上一节说的,CLASS模式做游戏可以团队开发。我可以让别人帮我做CLASS,做好我拿来用。我不需要知道他代码怎么写的,我只需要知道这个CLASS能让这个机械人按照什么规则行动,有什么按钮可以让我摁。   封装性的好处由此显示出来了。   再闯关游戏里,经常出现比如画面上主角一人对N个敌人的场面。这些敌人每个都可以绑定同一个CLASS。就是说写了一个CLASS分别装载到N个实例化的MC中去,而不用每个敌人都各自写一段代码。  HYPERLINK /club/attachment.php?aid=746k=ddbcb881b057b739e14bb840f76700b9t=1237452904nothumb=yessid=23d1H5kAeWrv0%2F0%2FvTT%2BhtPL%2Bu2ROA0laRdZzYDHJnQup%2F8 \o 2.jpg \t _blank 下载 (48.31 KB) 2009-2-17 11:16 可能其中两个敌人的生命和攻击力不同。这也很简单,在CLASS里做一个接收外部传入生命和攻击力两个参数???功能,在敌人MC绑定CLASS后,再传生命和攻击力两个变量的值到MC里即可。   不过要说明,CLASS并不是只能实例化在MC上,还可以装在例如Object之类的上面。   比如我们很常用的一个FLASH本来就有的CLASS:SOUND   mySound=new Sound()   mySound.attachSound(a.mp3)   mySound.start(0,1)   这里我们就可以看作Sound类实例化了在mySound的上,而attachSound和start都是Sound类的“按钮”,可以让外部操控这个装载了Sound类的mySound。我们并不知道Sound这个CLASS内部代码是如何的,但我们知道按钮可以用来干什么,用的也不是很爽吗?   前面说了CLASS的基本应用,可能有鸟鸟们要问了,我做个function一样可以用啊,或者在MC里敲代码,跟你写CLASS一样。   那为什么还要写CLASS啊?   那下面我就来写点CLASS的另外个重要的特性-“继承” 网页教学网   先来个小例子:   隔壁阿三写了个类“机器人控制.as”,里面写了若干行的代码,包括“移动、跳跃”两个个功能。   我现在也想写个类“超级流氓机器人.as”,里面包括“移动、跳跃、攻击”三个功能。   和阿三写的类比较起来,“移动、跳跃”两个功能是一样的啦,我想写的类只多了个“攻击”功能~   于是可以偷懒了。   在我写的类“超级流氓机器人.as”第一行加句简单的代码,就可以把阿三写的类完全COPY过来。(代码语法命令后面的课程会讲的)   然后我的“超级流氓机器人.as”文件里,内容就只有段写“攻击的代码”。 网页教学网   看到这里,鸟鸟们又要问了,为什么不直接ctrl+c然后ctrl+v把阿三写的类复制过来,然后在里面加?   别人写的代码,复杂的要死,反正我脑子转不过来,不想去分析别人的东西。分析别人写的代码,痛苦的来~   日后我再要写个“移动、跳跃、翻滚”的代码,我不是还要再ctrl+c然后ctrl+v?多麻烦!

文档评论(0)

ganqludp + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档