Action Script 30 练习 控制汽车移动_第1页
Action Script 30 练习 控制汽车移动_第2页
Action Script 30 练习 控制汽车移动_第3页
Action Script 30 练习 控制汽车移动_第4页
Action Script 30 练习 控制汽车移动_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ActionScript3.0练习控制汽车移动在很多交互的游戏中,角色的移动通常是通过鼠标控制来完成的。当鼠标点击有效区域的某一位置时,角色将自动向该位置移动。在Flash游戏或交互动画中,将物体的坐标与速度相加可以实现物体的位移。如果与鼠标事件相结合,即可实现鼠标控制物体的位移。如图8-19所示,鼠标点击舞台右侧后,汽车自动向右移动,速度并逐渐减慢直至停止。图8-19控制汽车移动使用x属性和mouseX属性获取汽车和鼠标点击位置的x的坐标,并根据这两个坐标计算出它们之间的水平距离。然后,将距离乘以缓冲系数即可得到当前汽车的速度,并可以重新设定汽车的x坐标。新建530X400像素的空白文档,将素材图像导入到【库】面板中,并将“bg”素材图像拖入到舞台中,如图8-20所示。图8-20拖入背景图像新建“汽车”影片剪辑元件,在舞台中绘制一辆红色的小汽车,如圈-21所示。图8-21绘制汽车右击【库】面板中的“汽车”元件,在弹出的菜单中执行【链接】命令。然后,在【链接属性】对话框中设置【类】为“Car”,如图8-22所示。图8-22设置链接属性新建“AS”图层,打开【动作】面板。然后,输入在舞台中显示“汽车”元件代码,如下所示。varcar:Car=newCar();〃创建Car对象,即实例化汽车元件car.x=150;〃设置汽车的x坐标car.y=280;〃设置汽车的y坐标addChild(car);〃将汽车显示在舞台中侦听鼠标单击事件,通过调用start()函数获取鼠标光标的x坐标,以及判断汽车面向的方向,代码如下所示。vara:Number=0.1;〃缓冲系数varvx:Number;〃汽车速度

varendx:Number;〃鼠标光标的x坐标varcarR:Boolean=true;〃判断汽车面向的方向,向右为真stage.addEventListener(MouseEvent.CLICK,start);〃侦听鼠标单击事件,调用start()函数functionstart(e:MouseEvent):void(endx=this.mouseX;//获取鼠标光标的x坐标if(endx<car.x&&carR==true)(//如果鼠标点击的位置在汽车的左面且汽车面向右car.scaleX*=-1;〃水平翻转汽车元件carR=false;〃设置汽车面向右为假,即面向左}elseif(endx>car.x&&carR==false)(//如果鼠标点击的位置在汽车的右面且汽车面向左car.scaleX*=-1;〃水平翻转汽车元件carR=true;〃设置汽车面向右为真,即面向右}}(6)在start()函数中创建侦听汽车的enterFrame事件,通过调用move()函数实现汽车的位移,代码如下所示。car.addEventListener(Event.ENTER_FRAME,move);//侦听汽车的enterFrame事件,调用move()函数实现汽车位移functionmove(e:Event):void(vardx:int=endx-car.x;//计算鼠标点击的位置与汽车的水平距离vx=dx*a;//计算当前汽车的速度car.x+=vx;〃设置汽车新的x坐标,即实现位移if(dx==0)(//如果点击的位置与汽

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论