Flash游戏初级套餐

来源 :电脑爱好者 | 被引量 : 0次 | 上传用户:Depthcharge2009
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  上期我们对Flash几大职业类别进行了详细解读,“钱途”光明,让人向往啊!要想淘到真金,就得有真本事,下面我们就来吃一份游戏套餐,好好补充能量吧!
  
  想一想,Flash ActionScript版本该选谁?
  如果你是一个初学者,面对Flash ActionScript的几个版本——AS1、AS2、AS3等可能会比较困惑,无从下手。它们有好坏之分吗?要从哪个开始学呢?
  *方便小巧的AS1、AS2
  如果你只想做动画,做做简单的网站,可以点击按钮,可以相互加载,学习AS1就足够了。它方便灵活,没有什么条条框框,非常容易学,因为是面向过程的编程,你可以想到哪儿写到哪儿。
  AS2只是在AS1的基础上增加了一些语法,可以让你按照比较标准的方式进行面向对象的程序开发。但Flash被编译成SWF时,内部的代码还是AS1。
  *功能强大的AS3
  如果你想做游戏,还有比较复杂、比较前沿的互动站点,请直接学习AS3,这是趋势,AS3有很多诱人的优势。
  优势1:惊人的代码运行速度
  这里用一台CPU为酷睿2 E4400的电脑进行测试。在Flash CS4中新建两个Flash文件,一个脚本设置为ActionScript2,另一个设置为ActionScript3。
  在时间轴,第一帧上按F9,打开“动作→帧面板”,把以下代码粘贴到里面,然后按Ctrl+Enter测试影片。
  var array:Array = []
  var t1:Number = getTimer()
  for(var i=0; i<1400000; i++){
   array[i] = "信息"
  }
  trace("循环数组耗时: "+ (getTimer()-t1)/1000 + " 秒")
  AS2循环数组耗时13.378 秒,AS3循环数组耗时: 0.199 秒。这个结果比较极端,但你在实际使用中会发现,同样的代码,AS3的执行效率远比AS2和AS1要快得多!
  优势2:便捷的XML处理功能
  比如一个XML:
  var myXML:XML = new XML("<人类><人><姓名>人名1<年龄>18<性别>男<人><姓名>人名2<年龄>18<性别>女")
  在AS2中,如果你想得到某个节点的值,需要这样写:
  trace(myXML.firstChild.childNodes[0].childNodes[0].childNodes[0].nodeValue)
  很麻烦,容易犯晕出错。
  在AS3中可就方便了:
  trace(myXML.人[0].姓名)
  AS3对XML的处理非常强大和方便。
  优势3:正则表达式
  学过程序的人,一定都知道什么是正则表达式,从AS3开始Flash也支持正则表达式了。
  正则表达式只需要一句话就可以搞定的事情,如果你用检查字符串的办法,自己分析会累死的。举几个正则表达式的例子,确实简单吧。
  [\u4e00-\u9fa5]//匹配中文字符
  ^-?\d+$//匹配整数
  ^[A-Za-z]+$//匹配由26个英文字母组成的字符串
  \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*//匹配Email地址
  除了上面说的几点,AS3的好处还有很多很多。随着FlashPlayer版本的更新,会有越来越多的新API出现,而那些新的API都是只提供给AS3使用的。也就是说,如果你想用那些新功能,只能选择AS3啦。
  再综合比较一下吧!
  有人说开发小项目用AS1最方便,开发时间上大概是 AS1  用AS3面向对象的做法绝对是首选,因为程序的可读性非常高。可能初期比较费时间,但这是绝对值得的。当项目完成半年甚至一年后又需要修改,或者又要做类似的项目,你就会感觉到面向对象的好处了。
  尝一尝,
  接触简单的Flash游戏
  初学者和入门者别着急,让我们轻松尝试,与Flash亲密接触。如果不涉及复杂的算法、专业的数学知识、人工AI等等,你想实现一个简单的Flash游戏,只需知道:
  1.什么是MovieClip
  2.MovieClip都有什么属性
  3.如何在场景中添加或删除MovieClip
  4.了解数组和Object是什么、如何使用,以及如何控制文本
  1.什么是MovieClip
  在Flash中手绘好的素材,是无法用程序控制它们的,你也无法在时间轴上做动画,使它们动起来。如果你想做动画或者游戏,想控制那些被显示的对象(大小、颜色、角度或其他),对象必须是一个元件。选择在场景中画好的素材,然后按F8,就会出现一个对话框,询问你要把素材转化成什么元件。
  元件可以是Button(按钮,是特殊的影片剪辑)、Sprite(精灵,没有时间轴)、MovieClip(影片剪辑,是具备时间轴的Sprite),当素材被转化成元件以后,你可以在库(Ctrl+L)中找到它们。这些在库中的元件,你就可以在动画中反复使用啦。
  2.MovieClip都有什么属性
  MovieClip属性可以参看:http://tinyurl.com/yypbkj2
  其中包含“公共属性”以及“隐藏继承的公共属性”。假设你的影片剪辑叫做MC,那么你通过“点语法”来控制它,并使用它的属性。使用MovieClip的“公共方法”以及“继承的公共方法”用法也是一样的。比如:
  MC.x = 200//控制MC的x坐标
  MC.y = 100 //控制MC的y坐标
  MC.gotoAndStop(10) //控制MC停止在第几帧
  MC.play() //控制MC开始播放
  3.如何在场景中添加或删除MovieClip
  在场景中画一个圆,之后用鼠标选择这个圆(你会看到圆上有规则排列的原点),按F8,会弹出一个窗口“转换为元件”。
  请按照图的设置(名称Ball,类Ball,基类:flash.display.MovieClip),完成后点击确定。完成后,你就可以在库中看到这个Ball了。完成后把Ball从时间轴上删掉。在时间轴上绘制两个按钮,用来添加和删除(见图1)。在属性面板中,给两个按钮分别取名为bt1和bt2在场景中点空白处(见图2)。在“类”的输入框中输入DocumentClass。保存这个文件到硬盘,命名为myFirstFlash.fla。
  打开FlashDevelop,新建一个as文件,保存到myFirstFlash.fla 同一个目录里,命名为 DocumentClass.as。在DocumentClass中输入如下内容:
  package {
   import flash.display.Sprite;
   import flash.display.SimpleButton;
   import flash.display.MovieClip;
   import flash.events.Event;
   import flash.events.MouseEvent;
   public class DocumentClass extends MovieClip {
   private var ballShowed:Boolean;
   private var ball:Ball;
   function DocumentClass() {
   ballShowed = false;
   bt1.addEventListener(MouseEvent.CLICK,_click)
   bt2.addEventListener(MouseEvent.CLICK,_click)
   }
   private function _click(e:Event):void
   {
   switch(e.target) {
   case bt1:
   if (!ballShowed) {
   ballShowed = true;
   ball = new Ball();
   ball.x = 200; ball.y = 100;
   addChild(ball);
  }
   break;
  case bt2:
  if (ballShowed) {
   ballShowed = false;
   removeChild(ball);
   }
   break;
  default:
  break;
   }
   }
   }
  }
  
  完成后,在Flash中Ctrl+Enter测试,即可看到运行效果了。你已经成功完成添加和删除MC的任务,还做完成了如何使用和监听按钮的鼠标事件。
  4.数组和Object的使用请参阅帮助文件。如何控制文本已经在第7期刊登的“hello the word”实例中向大家介绍了。
  
  果果点酱
  世上最远的距离,是Flash爱好者拿着iPhone,却不能开发你
  对于Flash,地球人是有爱的;对于iPhone,地球人也是有爱的,只可惜,Adobe和苹果之间目前无爱。
  盼望着,盼望着,Flash CS5要发布了,本刊原计划为大家送上神奇的重力游戏DIY,只要你有Flash CS5+iPhone。
  可惜,只好无奈地把这个计划取消了,因为新的iPhone开发者授权协议中写道:“应用程序仅能使用苹果规定的API,不能使用或调用任何其它API。应用程序需要以Objective-C、C、C++或JavaScript编写,只有以C、C++和Objective-C编写的代码可以直接连接到官方APIs(不允许应用程序通过中间解释程序或兼容层、工具调用官方APIs)。”
  也就是说,这个声明几乎完全断绝了Adobe在苹果iPhone等产品上推广Flash的念头,之前虽然苹果不支持Flash,但是Adobe在MAX 2009大会上宣布了Packager for iPhone,Flash开发人员还可以使用它来创建本地iPhone、iPod touch和iPad应用程序,该软件包将包含在即将到来的Flash Pro CS5中。
  据国外媒体报道,早在苹果发布iPad平板电脑之前,Adobe公司与苹果公司之间就拉开了口水战,近日iPhone OS 4.0的揭晓更是使得两家的口水战升级。乔布斯觉得Flash太低级,希望大家都改用HTML5。忽然让人想起微软当年限制Java在Windows上发展的小插曲。
  好大一个饼,如今成泡影,据说Adobe四处呼喊求援去了,失望的Flash爱好者们只好一声叹息,还有转机吗?这个世界变化快,祈祷奇迹的出现吧。
  
其他文献
摘 要:目前,我们使用的语文教材给人以耳目一新的感觉:一是理念新,二是内容新,三是形式新,四是体例新。它集“趣味性,生活性,新颖性”于一体。贴近生活,符合义务教育课程标的精神。在教学实验研究中,老师们始终抓住教材中的这些新特点,力求在教材中从适当的角度寻找学生学习的趣点,力求上出语文教学新特色。  关键词:小学語文 新教材  一、依照《小学语文课程标准》,熟练掌握语文课程的性质、地位及基本理念。 
期刊
摘 要:近年来,我们实行新课程改革标准,推崇素质教育,在这样的教学理念下,对小学各科的教学有了很大的变化,尤其是对语文这门基础学科有了更高的要求,教师如何把握课堂上的有限时间,使学生的学习效率提高,这作为重点的教学过程,需要我们深入探讨和研究。课堂提问是一种重要的教学形式,可以使学生对课文、字词的理解更加深刻,也可以帮助高年级学生巩固知识点,所以,让提问成为有效教学的桥梁,提高小学高年级语文课堂教
期刊
摘 要:物理学的发展在当今社会上尤为重要,相关的物理学技术也在广泛的应用,随着社会不断的发展深入,使得如今的物理教育课程面临了新的机遇和挑战,对于物理类的人才要求也在逐渐的增高。该要求具体表现为不仅需要扎实的物理学知识,而且还需要科学创造能力以及动手能力。为了培养合格的物理学人才以及当代教育与社会的发展,情境教学方法出现得到了极大的关注,这种实验情境教学模式不仅注重了学生的全面发展以及教育的拓展,
期刊
摘 要:培养小学生的自主管理能力对于小学生的健康成长与发展具有重要意义,因此低年级教师,特别是班主任要根据小学生的心理特点和认知能力,切实加强小学生自主管理能力的培养,让小学生逐步学会自我约束和自我管理能力,以促进自主发展。培养小学低年级学生的自主管理,首先要抓好过渡,明确自主管理要求;其次要强化训练,培养学生自主管理意识;最后要合理分工,监督与表扬,培养学生自主管理能力。  关键词:小学低年级学
期刊
已获得具有“工业设计奥斯卡”——德国iF设计大奖的明基V系列LED背光液晶,目前在国内推出18.5英寸、21.5英寸、24英寸三款机型,宽高比均为16:9,除18.5吋外,另外两款均支持1080p全高清分辨率,而今天我们带来的就是21.5英寸的V2220。  简约是美  此款显示器依然延续了V2400ECO包装的绿色环保包装,其包装采用了再使用、再利用及再生的采用,最大程度上减少纸张使用、对树木的
期刊
小丽就要独身一人去北京发展了,在无锡的一帮同学准备办一个派对欢送她北漂。不过还有几个好友身在外地无法赶来,怎么办呢?有同学建议在线视频直播,让外地的同学也能“参加”。这事,自然就落在了我的身上。    未雨绸缪准备好软硬件  ★笔记本电脑一台,能上网就行。  ★高清摄像头一个(如果笔记本有摄像头也可以凑合使用)。  ★视频软件,本例采用的是Webcam(http://www.onlinedown.
期刊
如今见面不问“你吃了吗?”,改问“你看《阿凡达》了吗?”中国人多,而IMAX屏幕少,3D《阿凡达》电影一票难求,堪比春运。北京的李女士好不容易挪到售票口被告知无票,只好到网上寻求转让信息。她惊奇地发现有人在网上以150元的原价叫卖《阿凡达》电影票:“其他黄牛的票都好几百元一张,如果按原价卖怎么赚钱呢?你们帮我调查一下,别让钱打了水漂。”原价的黄牛票背后难道也有暴利?值得关注。    特殊渠道下的购
期刊
摘 要:小学阶段的学生大多具有好奇心、爱玩爱动的个性特征,而且他们缺乏一定的学习主动性,因此,只对自己感兴趣的东西才认真学。这就决定了小学美术教育应该从趣味教学角度,提高学生的学习积极性,激发小学生对美术学习产生浓厚的兴趣,才能提高学生的美术素养。  关键词:小学美术;美术教学;趣味教学;激趣教学  一、借助多媒体教学技术,激发学生的学习热情  随着多媒体教学技术引进美术课堂,原本只在课本上出现的
期刊
2010年的第一个月,暨QQ影音之后,腾迅用QQ影像1.0 Beta1宣告了一款新图片处理软件的诞生。不过从软件功能上来看,常规功能比较普通,只是搭好了一个基本框架,细节和资源上还没有往深层次加工,而对QQ资源的支持依然成为腾讯软件不变的特色,明显这是腾讯在图片处理领域的一次试水。    能搜能看能编辑    运行QQ影像(下载地址:http://image.qq.com/),一个四周带有蔚蓝色边
期刊
摘 要:幼儿园阅读教学可以使小朋友增长见识、培养能力,目前越来越多的教师开始将关注点投入到幼儿园阅读教学研究方面。情景教学作为一种目前被公认的有效教学方法之一,它在幼儿园阅读教学应用方面显示出独特的作用。因此,从它的作用和应用等方面进行分析,希望能够更好地发挥它的作用。  关键词:情景教学法;幼儿园;阅读教学  幼儿园是一个学生求学生涯的第一站,而阅读能力的培养对于幼儿今后的学习和生活都有着不可替
期刊