1 / 22
文档名称:

Flash游戏开发教程3.doc

格式:doc   大小:50KB   页数:22页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Flash游戏开发教程3.doc

上传人:坐水行舟 2019/3/19 文件大小:50 KB

下载得到文件列表

Flash游戏开发教程3.doc

相关文档

文档介绍

文档介绍:Forpersonaluseonlyinstudyandresearch;mercialuse 做游戏用到最多,同时也是FLASH里最重要的类,就是~~~~~~~~~“MovieClip类”! 鸟鸟们不知不觉的就一直在用MovieClip类,比如你有没有经常写:.. onEnterFrame就是MovieClip类里的一个方法,只要是个MC(自动被绑上了MovieClip类),就都能用onEnterFrame。现在回到第一节说的那个天上掉宝地下人物接的游戏。人物有两个:小李和鸣人经过分析,这两个人物基本控制部分是一样的,然后就区别在两个人的各自的特殊技能不一样。于是我们可以这么做: 先建个“”类建个“”类,第一行一句代码继承“”类,然后在正文内容里写上小李特殊技能建个“”类,第一行一句代码继承“”类,然后在正文内容里写上鸣人特殊技能见图:Flash游戏开发教程:第三节src="_05/"> 大家可以看到,“”类也是继承了MovieClip类,因为要用到MovieClip类里的功能嘛~比如人物移动要用到onEnterFrame,,。类的继承,还可以覆盖继承过来类里的方法。比如A类有move、jump、attack三个方法我要写个B类,也包括这三个方法,但是attack这个方法和A类的attack有点不同,而move、jump这两个方法则和A类里的一模一样。于是我们写B类,第一行先写句话继承了A类。然后在正文里把attack方法重写一次,就自动覆盖掉了继承过来的A类的attack方法。其它的方法就不用写了,因为直接继承过来了。让我们来换个思路做上面那个例子。直接写了“”类,然后让“”类继承小李类,正文里只需要把特殊技能方法重写遍就OK了。见图:Flash游戏开发教程:第三节src="_05/"> 看了那么多概念,小鸟们要想,咋还不教具体怎么写CLASS呢? 别急啊,下节里会简单的教些的。其实我对这种死东西教学还是比较头大的,鸟鸟们也可以自己网上搜下具体CLASS撰写格式、规矩和变量、方法类型。肯定比我教的要详细。因为我在CLASS方面也只能算只比小鸟略微胖点点的中鸟啊,哈哈Flash游戏开发教程:第四节请先阅读:Flash游戏开发教程:第三节。本来不想写这节的,因为这节的内容很多书上或者网上资料都有,而且写的比我要详细正规得多。但后来想想,还是写吧! 而且后面几节要结合接宝的范例游戏,具体分析它的几个CLASS,所以,还是用一节把CLASS的写法说一下。可能我对CLASS的写法也不是很正规,有老鸟看了后,最好也能指点一下。先来个CLASS基本的模式。文件名:{ //第一部分:声明本CLASS要用到的变量 staticvara:Number=2; privatevarb:Number; privatevarc:Number=1; publicvard:Number; //第二部分:构造函数 functionTime_control(){ init(); } //第三部分:隐式设置-获取法 publicfunctionset_d(sss:Number):Void{ d=sss; } publicfunctionget_d():Number{ return(d); } //第四部分:私有和公有方法 privatefunctioninit(){ //一般写点初始化的内容} privatefunctionaa(){ } publicfunctionbb(){ }} 如果是要继承类,比如继承MovieClip类,第一行就改写成 classTime_controlextendsMovieClip{ 下面简单解释下各个部分(我最不擅长解释说明这类东西) CLASS类都是以 class类名称{ 内容} 的形式,而且类名称和文件名要相同。 CLASS的内容分四部分第一部分声明本CLASS所用到的变量,这里要提的是,和在SWF里定义变量不同。SWF里你可以用比如a=1这种自动变量形式,而在CLASS里你必须写明a的类型是Number,再定义变量值是1 第二部分是CLASS的构造函数,什么意思呢?就是当CLASS的实例出现后,自动执行这个function里的内容,一般都是些初始化的内容。function的名称要和CLASS类的名称一样哦~而且这里初始化一般都是用个init()函数,init函数具体在后面回自己定义。为什么要这样而不直接把初始化内容写在构造函数