首 页
网络学院
视频教程
资源下载
HOT
实例教程
图文教程
专题中心
学习社区
繁體中文
当前位置:
首页
>
图文教程
>
Flash动画
>
ActionScript
> Flash游戏开发教程:第六节
ActionScript
FLASH 3D相册之利用BitmapData类制作
Flash 脚本游戏开发教程 第一课
Flash 脚本游戏开发教程第二课
Flash 脚本游戏开发教程第三课
Flash 脚本游戏开发教程第四课
Flash 脚本游戏开发教程第五课
Flash 脚本游戏开发教程第六课
Flash 脚本游戏开发教程第七课
Flash 脚本游戏开发教程第八课
Flash AS实现的蝌蚪摆尾动画的教程
从基础开始深入学Flash AS3教程(4)(译文)
从基础开始深入学Flash AS3教程(5)(译文)
从基础开始深入Flash AS3教程(2)(译文)
从基础开始深入学Flash AS3教程(3)(译文)
Flash AS3对单个图片进行角色动作化处理
从基础开始深入Flash AS3教程(1)(译文)
Flash教程:if条件语句的用法
Flash AS教程:_visible属性的详细讲解
Flash AS教程:图片环绕旋转效
Flash教程:trace()的使用
No.
«
1
2
3
4
›
»
技术文章搜索
关键字
ActionScript 中的 Flash游戏开发教程:第六节
出处:
互联网
整理:
软晨网(RuanChen.com)
发布:
2009-09-16
浏览: 167 ::
收藏到网摘: n/a
Flash游戏开发教程:第五节
Flash AS3教程:下雪动画效果
请先阅读:Flash游戏开发教程:第五节
范例接宝游戏中人物类的CLASS讲解
首先请下载源文件:
CLASS.rar
下载好,打开一看,如下:
一个FLA主文件
: run_game.fla
三个目录
: player items game 我把.as类文件分门别类的存放,这样看上去清晰,更重要的是别人看了会觉得我很专业。
目录player里有
: Player_1.as Player_2.as
目录items里有
: Jin.as Bao1.as Bao2.as
目录game里有
: Game_control.as Score_view.as Time_control.as .as具体意义看文件名就应该能知道,这里要说的是,一般默认的规则,放CLASS目录用小写字母命名,.as的类文件名的首字母用大写
这节详细讲下人物类的CLASS,首先是Player_1.as,人物小李的类
首先去源文件里点进人物1的MC,看下结构。
由两帧组成,一是“stand”,二是“run”
人物上面有一层有个圆形的MC,我把它命名为hit,靠这个mc来做碰撞检测。
金币里面也有这个名叫hit的MC,我判断人物和金币是不是相碰是用这个语句的: 金币MC.hit.hitTest(人物MC.hit)
传统碰撞检测都这么做。
又开始扯话题了,马上拉回来
现在拿出Player_1.as的代码
class player.Player_1 extends MovieClip {
private var hit:MovieClip; //人物MC里出现的东西都要声明,hit这个MC也不例外
public var speed:Number;//这个是人物移动的速度
//构造函数
function Player_1() {
init();//初始化的人物打包在init()里了
}
//隐式设置-获取法
public function set _speed(sss:Number):Void {
speed = sss;
}//可供外界用MC._speed=X修改speed的数值
public function get _speed():Number {
return (speed);
}//可供外界读取speed的数值
//私-公有方法
//---初始化方法---
private function init() {
_y = 310;
_x = 300;//人物来到舞台后的初始位置
speed = 6;//移动速度
onEnterFrame = Move;//人物来到舞台后就开始onEnterFrame,内容见Move这个function
}
//---人物移动---
private function Move() {
if (Key.isDown(37)) {
_xscale = -100;
_x -= speed;
this.gotoAndStop("run");
} else if (Key.isDown(39)) {
_xscale = 100;
_x = speed;
this.gotoAndStop("run");
} else {
this.gotoAndStop("stand");
}
//以上是左右键的定义,应该看得懂吧?
if (Key.isDown(38)) {
speed = 12;
} else {
speed = 6;
}
//以上是上键的定义,按着后速度就加倍咯
range();//范围定义,内容见下面
}
//---限定移动范围---
private function range() {
if (_x>540) {
_x = 540;
}
if (_x<10) {
_x = 10;
}//不让人物出界
}
}
这个CLASS文件就是这样。按照前几节我说的结构,鸟鸟们对照这看下。能不能看懂。这里要说的是,第一行的player.Player_1,其中前面的player表示路径“.”就相当于"\",player.Player_1就相当于player\Player_1,关联到MC的时候也要这么写的。
小李的CLASS写完了
然后写鸣人的CLASS
记得前几节我说的“继承”这个概念么?
快去翻出来看看。
鸣人和小李就是上键技能不同,所以继承过来后,正文把按键控制重写一次就行了,其它就全继承小李的类了
代码如下
class player.Player_2 extends player.Player_1 {
//继承了player.Player_1类,所以只需要把两者间唯一不同的Move函数重写次就可以啦~当然构造函数还是要的
function Player_2() {
init();
}
//人物2的Move函数
private function Move() {
if (Key.isDown(37)) {
_xscale = -100;
_x -= speed;
if (_currentframe != 3) {
gotoAndStop("run");
}//这句自己体会下,不加的话,按上键后鸣人就一直不停的在跳跃了
} else if (Key.isDown(39)) {
_xscale = 100;
_x = speed;
if (_currentframe != 3) {
gotoAndStop("run");
}
} else {
if (_currentframe != 3) {
gotoAndStop("stand");
}
}
//
if (Key.isDown(38)) {
gotoAndStop("jump");
}
range();
}
}
好了,人物类就写完了。
消化下。后面的宝物类大同小异,下一节再写。
Flash游戏开发教程:第五节
Flash AS3教程:下雪动画效果
评论 (0)
All
登陆
还没注册?