WEB开发网      婵犵數濞€濞佳囧磹婵犳艾鐤炬い鎰堕檮閸嬬喐銇勯弽銊с€掗梻鍕閺岋箑螣娓氼垱笑闂佽姘﹂褔婀佸┑鐘诧工妤犲憡绂嶉崜褏纾奸弶鍫涘妼缁楁岸鏌熷畡鐗堝殗闁诡喒鏅犲畷褰掝敃閵堝棙顔忔繝鐢靛仦閸ㄥ爼骞愰幘顔肩;闁规崘绉ぐ鎺撳亹闁绘垶锕╁Λ鍕⒑閹肩偛濡奸悗娑掓櫇缁顓兼径妯绘櫇闂佹寧绻傞弻濠囨晝閸屾稓鍘甸柣搴㈢⊕閿氶柣蹇ョ稻缁绘繃绻濋崘銊т紝闂佽鍨伴崯鏉戠暦閻旂⒈鏁傞柛鈾€鏅欑槐妯衡攽閻愬樊鍤熷┑顔藉劤铻為柛鏇ㄥ墯閸欏繘鏌嶉崫鍕櫣缂佲偓婢跺绠鹃柟瀛樼箘閿涘秵顨ラ悙顏勭伈闁诡喖缍婂畷鎯邦槻婵℃彃顭烽弻娑㈠Ω閵夈儺鍔夌紓浣稿€哥粔褰掑极閹剧粯鏅搁柨鐕傛嫹 ---闂傚倷鐒︾€笛兠洪埡鍛闁跨噦鎷�
开发学院图形图像Flash Flash游戏开发教程:第七节 阅读

Flash游戏开发教程:第七节

 2008-08-08 11:30:05 来源:WEB开发网 闂傚倷绶氬ḿ褍螞閹绢喖绠柨鐕傛嫹闂傚倷绀侀幉锟犲垂閻㈠灚宕查柟鎵閸庡秵銇勯幒鎴濃偓鐢稿磻閹炬枼妲堟繛鍡楃С濞岊亞绱撻崒姘扁枌闁瑰嚖鎷�婵犵數濮幏鍐川椤撴繄鎹曢梻渚€娼уú銈吤洪妸鈺佺劦妞ゆ帊鑳堕埊鏇㈡煏閸モ晛浠х紒杈╁仱閺佹捇鏁撻敓锟�闂傚倷绶氬ḿ褍螞閹绢喖绠柨鐕傛嫹  闂傚倷鑳舵灙缂佺粯顨呴埢宥夊即閵忕姵鐎梺缁樺姇閹碱偆鐥閺屾洘绻濊箛鏇犵獥闂佺厧澹婃禍婊堚€旈崘顏佸亾閿濆骸澧ù鐘欏嫮绠鹃柛顐ゅ枎閻忋儲銇勯弴妯哄姦妞ゃ垺鐟╅幃鈩冩償閵囧府鎷�
核心提示:先补充个游戏里的结构:_root下有三个空MC: pl,item和xspl这个空MC是用来attach人物的item这个空MC是用来attach宝物的xs这个MC是用来attach显示得分的为什么要这么做呢?……因为管理方便呀~以后你会慢慢体会到的,严重警告:第7课未搞懂看明白者,Flash

先补充个游戏里的结构:

_root下有三个空MC: pl,item和xs

pl这个空MC是用来attach人物的

item这个空MC是用来attach宝物的

xs这个MC是用来attach显示得分的

为什么要这么做呢?……因为管理方便呀~以后你会慢慢体会到的。

严重警告:第7课未搞懂看明白者,请回上节反复研究,直至搞懂。不然继续往下看会让你体内真气逆行,任、督二脉自锁,全身犹如蚂蚁咬,饭吃不下,觉睡不着,放P恶臭,对FLASH丧失学习信心……

(……)

好了,能看到这行的,说明你已经是个消化第7节内容的鸟了。

这一节我也话不多说,直接放代码了。用你第7节学到的内容自我检验下。

金币10和50共用的CLASS

class items.Jin extends MovieClip {
  static var basic_speed:Number = 3; //下落基础速度  
  public var score:Number = 10;  //得分
  public var speed:Number;  //下落速度
  private var hit:MovieClip;  //声明碰撞检测的MC
  private var depth:Number;  //当宝物被人物获得,显示得分的MC的深度    
  //---构造函数---
  function Jin() {
    init();
  }
  //隐式设置-获取方法
  public function set _score(kkk:Number):Void {
    score = kkk;
  }//得分10还是50,传入这个参数就能解决
  public function _bspeed(){
    basic_speed= 3;
    trace(basic_speed)
  }//这个要说明下,静态变量basic_speed每实例化一个MC都会自我增加,所以基础速度越来越快。这个方法是让basic_speed变回原始的3。用于每回合开始时初始化使用。
  public function set _speed(sss:Number):Void {
    speed = sss;
  }
  //共有-私有方法  
  private function init() {
    _x = 50+random(450);
    _y = -15;
    speed = basic_speed+random(50)/10;//下落速度是由基础速度+随机增量
    basic_speed+=0.03
    //trace(basic_speed)
    onEnterFrame = Move;
  }
  private function Move() {
    _y += speed;
    if (_y>380) {
      this.removeMovieClip();
    }
    ///////////////////////////////// 
    if (hit.hitTest(_root.pl.player.hit)) {
      getItem();
    }
    ///////////////////////////////// 碰撞检测哦~
  }
  public function getItem() {
    _root.music_control.snd("jin");//声音控制,以后会讲到
    _root.score += score;
    depth = _root.xs.getNextHighestDepth();
    var a:MovieClip = _root.xs.attachMovie("getScore", "getScore"+depth, depth++);//ATTACH显示得分的MC
    a.aaa.score = "+"+score;
    a._x = _x;
    a._y = _y;
    this.removeMovieClip();
  }
}

1 2  下一页

Tags:Flash 游戏 开发

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接