當前位置:編程學習大全網 - 網絡軟體 - flash 仿“金山打字通之打地鼠”(打字遊戲) 源碼

flash 仿“金山打字通之打地鼠”(打字遊戲) 源碼

個簡單的Flash打字遊戲

上壹篇 / 下壹篇 2007-09-25 16:42:03

查看( 142 ) / 評論( 3 ) / 評分( 5 / 0 )

代碼:

/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

打字遊戲 ——V1.0

日期:2007-9-24

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

定義變量

----------------------------------------------------------------------------------------------

*/

fscommand("fullscreen", true);

var Bring_num:Number = 0;

var Bring_maxnum:Number = 20;

var Grade_num:Number = 1;

var Grade_bring:Number = 100;

var Move_speed:Number = 2;

var Bring_speed:Number = 0;

var Press_num:Number = 0;

var Right_num:Number = 0;

var Loss_num:Number = 0;

var Grade_boolean:Boolean = false;

var Interval_num:Number = 0;

var Listener:Object = new Object();

var Addsound:Sound = new Sound();

var Addblast_mc:Object = new Object();

var Time_m:Number = 0;

var Time_s:Number = 1;

var Hide_id:Number;

/*

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Bring_word函數功能:隨機產生字符

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

*/

function Bring_word() {

var color_array:Array = new Array(0xffffff, 0x9B4A8B, 0xE0C0DB, 0xAC285E, 0x235CB1, 0x379D37, 0xB1A323);

var txtstyle:TextFormat = new TextFormat();

txtstyle.bold = true;

txtstyle.font = "宋體";

txtstyle.size = 20;

txtstyle.color = color_array[random(7)];

_root.Bring_num++;

if (_root.Bring_num>=Bring_maxnum) {

_root.Bring_num = 0;

}

switch (random(2)) {

case 0 :

txt = random(26)+97;

break;

case 1 :

txt = random(10)+48;

break;

}

_root.createTextField("txt"+_root.Bring_num, _root.Bring_num, random(Stage.width), -(random(200)+10), 25, 25);

this["txt"+_root.Bring_num].text = chr(txt);

this["txt"+_root.Bring_num].setTextFormat(txtstyle);

}

/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Interval_event();初始化時產生的字符個數

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

*/

function Interval_event() {

Bring_word();

Interval_num++;

if (Interval_num>=3) {

clearInterval(Interval_id);

}

}

var Interval_id:Number = setInterval(Interval_event, 1000);

/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

cyc_event下落函數

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

*/

function cyc_event() {

function _event() {

for (var i = 0; i<=Bring_maxnum; i++) {

var n:Number = random(2) ? -Math.random()*9 : Math.random()*9;

_root["txt"+i]._y += Move_speed;

_root["txt"+i]._x += n;

if (_root["txt"+i]._y>Stage.height) {

_root["txt"+i].removeTextField();

Bring_word();

Loss_num++;

loss_txt.text = Loss_num;

}

}

}

var cyc_id:Number = setInterval(_event, 50);

}

cyc_event();

/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

監聽鍵盤

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

*/

Key.addListener(Listener);

Listener.onKeyDown = function() {

Press_num++;

//trace(Press_num);

if (Grade_boolean) {

Grade_num++;

Grade_boolean = false;

grade_txt.text = "第"+Grade_num+"關";

Move_speed += 2;

for (var i = 0; i<3; i++) {

Bring_word();

}

}

//trace("Press_num="+Press_num);

for (i=0; i<=Bring_maxnum; i++) {

if (_root["txt"+i].text == chr(Key.getAscii())) {

Right_num++;

Addsound.attachSound("Sound_mc");

Addsound.start();

//_root.attachMovie("Blast_mc", "Addblast_mc", _root.getNextHighestDepth(), {_x:_root["txt"+i]._x, _y:_root["txt"+i]._y});

Blast_mc.play();

Blast_mc._x = _root["txt"+i]._x;

Blast_mc._y = _root["txt"+i]._y;

_root["txt"+i].removeTextField();

Bring_word();

if (Right_num>=Grade_bring and Right_num%Grade_bring == 0) {

Grade_boolean = true;

} else {

Grade_boolean = false;

}

}

}

right_txt.text = String(Right_num);

if (Press_num-Right_num>0) {

wrong_txt.text = String(Press_num-Right_num);

} else {

Press_num += Math.abs(Press_num-Right_num);

}

};

/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5

時間函數

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5

*/

function Time_event() {

Time_s++;

if (Time_s/60>1) {

Time_m++;

Time_s = 1;

}

time_txt.text = Time_m+":"+Time_s%60;

}

setInterval(Time_event, 1000);

/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

簡介函數

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

*/

var newmenu:ContextMenu = new ContextMenu();

newmenu.hideBuiltInItems();

this.menu = newmenu;

newmenu.customItems.push(new ContextMenuItem("作者:Edward.yang", by_event));

newmenu.customItems.push(new ContextMenuItem("QQ:77839683", getqq));

newmenu.customItems.push(new ContextMenuItem("退出", exit_event, true));

function exit_event() {

fscommand("quit", "");

}

function by_event() {

Hide_id = setInterval(hide_by, 5000);

by_mc.gotoAndStop(2);

by_mc._alpha = 0;

by_mc.onEnterFrame = function() {

this._alpha += (100-this._alpha)/8;

this._x += (Stage.width/2-this._x)/8;

this._y += (Stage.height/2-this._y)/8;

//trace(this._alpha);

if (this._alpha>=100) {

delete by_mc.onEnterFrame;

}

};

}

function hide_by() {

by_mc.onEnterFrame = function() {

this._alpha -= 8;

//trace(this._alpha);

if (this._alpha<=0) {

this.gotoAndStop(1);

clearInterval(Hide_id);

delete by_mc.onEnterFrame;

}

};

}

function getqq() {

getURL("tencent://message/?uin=77839683");

  • 上一篇:cad2007免費下載安裝_cad2007免費版下載
  • 下一篇:河南下雪了是真的嗎
  • copyright 2024編程學習大全網