|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
与位图图形相比,矢量图形需要的内存和存储空间小很多,因为它们是以数学公式而不是大型数据集来表示的。位图图形之所以更大,是因为图像中的每个像素都需要一组单独的数据来表示。
请先浏览:Flash游戏开辟教程:第五节
典范接宝游戏中人物类的CLASS解说
起首请下载源文件:CLASS.rar
下载好,翻开一看,以下:
我把.as类文件分门别类的寄存,如许看上往明晰,更主要的是他人看了会以为我很专业。
- 目次player里有:
- 目次items里有:
- 目次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的代码
classplayer.Player_1extendsMovieClip{
privatevarhit:MovieClip;//人物MC里呈现的器材都要声明,hit这个MC也不破例
publicvarspeed:Number;//这个是人物挪动的速率
//机关函数
functionPlayer_1(){
init();//初始化的人物打包在init()里了
}
//隐式设置-猎取法
publicfunctionset_speed(sss:Number):Void{
speed=sss;
}//可供外界用MC._speed=X修正speed的数值
publicfunctionget_speed():Number{
return(speed);
}//可供外界读取speed的数值
//私-私有办法
//---初始化办法---
privatefunctioninit(){
_y=310;
_x=300;//人物离开舞台后的初始地位
speed=6;//挪动速率
onEnterFrame=Move;//人物离开舞台后就入手下手onEnterFrame,内容见Move这个function
}
//---人物挪动---
privatefunctionMove(){
if(Key.isDown(37)){
_xscale=-100;
_x-=speed;
this.gotoAndStop("run");
}elseif(Key.isDown(39)){
_xscale=100;
_x+=speed;
this.gotoAndStop("run");
}else{
this.gotoAndStop("stand");
}
//以上是摆布键的界说,应当看得懂吧?
if(Key.isDown(38)){
speed=12;
}else{
speed=6;
}
//以上是上键的界说,按着后速率就更加咯
range();//局限界说,内容见上面
}
//---限制挪动局限---
privatefunctionrange(){
if(_x>540){
_x=540;
}
if(_x<10){
_x=10;
}//不让人物出界
}
}
这个CLASS文件就是如许。依照前几节我说的布局,鸟鸟们对比这看下。能不克不及看懂。这里要说的是,第一行的player.Player_1,个中后面的player暗示路径“.”就相称于"",player.Player_1就相称于playerPlayer_1,联系关系到MC的时分也要这么写的。
小李的CLASS写完了
然后写叫人的CLASS
记得前几节我说的“承继”这个观点么?
快往翻出来看看。
叫人和小李就是上键妙技分歧,以是承继过去后,注释把按键把持重写一次就好了,别的就全承继小李的类了
代码以下
classplayer.Player_2extendsplayer.Player_1{
//承继了player.Player_1类,以是只必要把二者间独一分歧的Move函数重写次就能够啦~固然机关函数仍是要的
functionPlayer_2(){
init();
}
//人物2的Move函数
privatefunctionMove(){
if(Key.isDown(37)){
_xscale=-100;
_x-=speed;
if(_currentframe!=3){
gotoAndStop("run");
}//这句本人体味下,不加的话,按上键后叫人就一向一直的在腾跃了
}elseif(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();
}
}
好了,人物类就写完了。
消化下。前面的宝贝类迥然不同,下一节再写。
这个播放器非常小,只需花一点点时间下载,对于在体验网页上的多媒体效果是个很好的开始。 |
|