當前位置:編程學習大全網 - 源碼下載 - Flash文字遊戲源代碼

Flash文字遊戲源代碼

包類別

{

導入flash . display . movie clip;

導入flash . events . *;

//創建類Duck繼承MovipClip

公共類Duck擴展MovieClip

{

//創建以下常量分別表示寬度和高度。

私有常量寬度:Number = 550

私有const HEIGHT:Number = 400;

//速度

私var _hspeed:數字;

私有var _ v speed:Number;

//方向猥褻兒童

私有var _ dir:int;

private var _ live:Boolean;

私有var _ tmpY:Number;

//是否停止運動的布爾值。

public var可擦除:Boolean

//靜態變量

靜態公共var得分:Number = 100;

公共函數Duck()

{

//在第壹幀停止播放頭。

this . gotoandstop(1);

//初始化變量值dir = 1;

dir = 1;

//將live賦值為true

this.live = true

//註冊幀速率事件

addEventListener(事件。ENTER_FRAME,fly);

}

//幀率事件執行功能

公共函數飛行(e:事件):無效

{

//下面的條件語句是判斷dir的值是1還是-1,在舞臺中心左側是1,右側是-1;這通常用於控制方向。

如果(this.x & lt寬度/ 2)

{

dir = 1;

}

如果(this.x & gt寬度- this.width / 2)

{

dir =-1;

}

//這個原理近似於上面所說的。

如果(this.y & lt- this.height / 2)

{

this.erasable = true

//刪除幀率事件。

this.removeEventListener(事件。ENTER_FRAME,fly);

}

//讓對象移動,方向由dir控制。

this . x+= dir * h speed;

this . y+= v speed;

}

公共函數die(e:Event):void

{

this . gotoandstop(2);

//讓對象旋轉,旋轉的方向由dir控制。

this . rotation+= dir *(this . y-this。_ tmpY)/10;

//這是控件Y坐標,但實際上這是壹個緩沖運動。

this.y += ((this.y - this。_ tmpY)-v speed)/10;

if(hspeed & gt;0)

{

h speed-= h speed/10;

}

//控制移動

this . x+= hspeed * dir;

如果(this.y & gt高度)

{

this.erasable = true

}

}

//這是靜態方法,屬於類方法,不是實例。它有四個參數。

靜態公共函數buildDuck(startX:Number,startY:Number,hspd:Number,vspd:Number):Duck

{

//這個靜態方法類似於克隆的功能,但又不同於克隆。就是生成壹個新的Duck對象,設置x,y,hspeed,vspeed的屬性值。

var duck:Duck =新鴨();

duck.x = startX

duck.y = startY

duck.hspeed = hspd

duck . v speed = vspd;

回鴨;

}

//設置屬性hspeed的值。

公共函數集hspeed(值:數字):void

{

_ hspeed = value

}

//獲取屬性hspeed的值。

公共函數get hspeed():Number

{

return _ hspeed

}

//設置屬性vspeed的值。

公共函數集vspeed(值:數字):void

{

_ vspeed = value

}

//獲取屬性vspeed的值。

公共函數get vspeed():Number

{

return _ vspeed

}

//設置dir屬性的值。

公共函數集dir(value:int):void

{

_ dir = value

this . scalex = _ dir *-1;

}

//獲取dir屬性的值。

公共函數get dir():int

{

return _ directory;

}

//外部live接口,是設置live的屬性值。

公共函數集live(值:布爾值):void

{

_ live = value

if (_live == false)

{

//在這裏給_tmpY賦值。是當前對象的y坐標。默認情況下,不分配該值,僅當_vive=false時才分配該值。

這個。_ tmpY = this.y

//註冊幀速率事件

this.removeEventListener(事件。ENTER_FRAME,fly);

//註冊幀速率事件

this.addEventListener(事件。ENTER_FRAME,die);

}

}

//live外部屬性接口。這就是live的價值。

公共函數get live():布爾值

{

返回_直播;

}

}

}

  • 上一篇:Svn源代碼分支管理
  • 下一篇:印度、日本、法國、埃及、澳大利亞、美國、巴西的絕對位置、海陸位置。
  • copyright 2024編程學習大全網