a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 辦公 > Flash > 正文

Flash AS代碼實現智力過河小游戲

2020-07-17 13:08:43
字體:
來源:轉載
供稿:網友

本教本教程主要用Flash AS來編寫一個智力過河小游戲,全部使用AS代碼來實現,教程比較基礎,轉發過來,希望對大家有所幫助。

游戲規則:

一只大獅子,一只小獅子,一只大老虎、一只小老虎、一只大花豹,一只小花豹要到河對面去,只有大動物和小老虎會劃船,船每次只能乘兩只動物。大動物之間互相吃不了,小動物之間互相吃不了,如果大動物不在同類的小動物就會被異類大動物吃掉。

復制粘貼到第一幀,測試:


復制代碼
代碼如下:
創建開始場景();
function 創建開始場景() {
創建TXT_MC(this, 游戲名, 智力過河, 200, 100, 300, false);
創建TXT_MC(this, 游戲開始, 游戲開始, 250, 200, 100, true);
創建TXT_MC(this, 游戲說明, 游戲說明, 250, 250, 100, true);
游戲開始.onPress = function() {
刪除開始場景();
創建游戲場景();
};
游戲說明.onPress = function() {
刪除開始場景();
創建說明場景();
};
}
function 刪除開始場景() {
游戲名.removeMovieClip();
游戲開始.removeMovieClip();
游戲說明.removeMovieClip();
}
function 刪除說明場景() {
規則.removeMovieClip();
說明.removeMovieClip();
游戲開始.removeMovieClip();
}
function 創建說明場景() {
var 內容 = 一只大獅子,一只小獅子,一只大老虎、一只小老虎、一只大花豹,+/n+一只小花豹要到河對面去,只有大動物和小老虎會劃船,船每次只能乘+/n+兩只動物。大動物之間互相吃不了,小動物之間互相吃不了,如果大動+/n+物不在同類的小動物就會被異類大動物吃掉。;
創建TXT_MC(this, 規則, 游戲規則, 230, 50, 150, false);
創建TXT_MC(this, 說明, 內容, 50, 100, 120, false);
創建TXT_MC(this, 游戲開始, 游戲開始, 250, 200, 100, true);
游戲開始.onPress = function() {
刪除說明場景();
創建游戲場景();
};
}
function 創建TXT_MC(路徑, 名稱, 文本, 坐標X, 坐標Y, 大小, 框) {
var MC = 路徑.createEmptyMovieClip(名稱, 路徑.getNextHighestDepth());
MC._x = 坐標X;
MC._y = 坐標Y;
MC._xscale = MC._yscale=大小;
var TXT = MC.createTextField(TXT, 0, 0, 0, 0, 0);
TXT.text = 文本;
TXT.selectable = false;
TXT.autoSize = true;
if (框 == true) {
MC.onRollOver = function() {
this.TXT.border = true;
this.onReleaseOutside = this.onRollOut=function () {
this.TXT.border = false;
};
};
}
return MC;
}
this.createEmptyMovieClip(遮照MC, this.getNextHighestDepth());
function 創建游戲場景() {
var 船上成員 = [];
var 左岸 = [大獅子, 小獅子, 大老虎, 小老虎, 大花豹, 小花豹];
this.createEmptyMovieClip(左岸MC, this.getNextHighestDepth());
創建河流();
this.createEmptyMovieClip(碼頭MC, this.getNextHighestDepth());
畫方塊(碼頭MC, 0, 348, 94, 50, true);
畫方塊(碼頭MC, 454, 348, 94, 50, true);
this.createEmptyMovieClip(提示MC, this.getNextHighestDepth());
左岸MC._y = 100;
左岸MC._x = 20;
for (var i = 0; i<左岸.length; i++) {
if (i%2 == 0) {
var MC = 創建TXT_MC(左岸MC, 左岸[i], 左岸[i], 0, 40*i, 100, true);
MC.名字 = MC._name;
MC.劃船 = true;
MC.方位 = 左岸;
MC.大小 = 大;
} else {
var MC = 創建TXT_MC(左岸MC, 左岸[i], 左岸[i], 0, 40*i, 100, true);
MC.名字 = MC._name;
MC.劃船 = false;
MC.方位 = 左岸;
MC.大小 = 小;
}
MC.onPress = function() {
if (船上成員.length == 2) {
提示信息(船上不能再乘座更多的動物了);
}
if (船上成員.length<2 && 船MC.行動 == false && this.方位 == 船MC.狀態) {
this._visible = false;
this.方位 = 船上;
船上成員.push(this);
eval(船倉+船上成員.length).TXT.text = this.名字;
}
};
}
左岸MC[小老虎].劃船 = true;
this.createEmptyMovieClip(船MC, this.getNextHighestDepth());
船MC._y = 360;
船MC._x = 100;
船MC.Y = 0;
船MC.狀態 = 左岸;
船MC.行動 = false;
船MC.速度 = 20;
畫船(船MC);
創建TXT_MC(船MC, TXT, ===>>, 40, -2, 100, false);
船MC.onPress = function() {
if (this.行動 == false && 是否能劃船(船上成員) && 能否呆船上(船上成員) && 岸上(this.狀態)) {
this.行動 = true;
船移動(this);
}
};
創建TXT_MC(this, 船倉1, , 船MC._x+35, 船MC._y-20, 100, true);
創建TXT_MC(this, 船倉2, , 船MC._x+35, 船MC._y-40, 100, true);
船倉1.onPress = function() {
if (船MC.狀態 == 左岸) {
左岸MC[this.TXT.text]._visible = true;
左岸MC[this.TXT.text]._x = 0;
左岸MC[this.TXT.text].方位 = 左岸;
刪除(船上成員, this.TXT.text);
this.TXT.text = 船倉2.TXT.text;
船倉2.TXT.text = ;
}
if (船MC.狀態 == 右岸) {
左岸MC[this.TXT.text]._visible = true;
左岸MC[this.TXT.text]._x = 480;
左岸MC[this.TXT.text].方位 = 右岸;
刪除(船上成員, this.TXT.text);
this.TXT.text = 船倉2.TXT.text;
船倉2.TXT.text = ;
var n = 0;
for (var i in 左岸MC) {
if (左岸MC[i].方位 == 右岸) {
n++;
if (n == 6) {
提示信息(地球已經不適合你居住+/n+快去上火星去吧!!);
創建結束畫面();
return;
}
}
}
}
};
船倉2.onPress = function() {
if (船MC.狀態 == 左岸) {
左岸MC[this.TXT.text]._visible = true;
左岸MC[this.TXT.text]._x = 0;
左岸MC[this.TXT.text].方位 = 左岸;
刪除(船上成員, this.TXT.text);
this.TXT.text = 船倉2.TXT.text;
船倉2.TXT.text = ;
}
if (船MC.狀態 == 右岸) {
左岸MC[this.TXT.text]._visible = true;
左岸MC[this.TXT.text]._x = 480;
左岸MC[this.TXT.text].方位 = 右岸;
刪除(船上成員, this.TXT.text);
this.TXT.text = 船倉2.TXT.text;
船倉2.TXT.text = ;
}
};
返回開始();
}
function 畫船(MC) {
MC.lineStyle(0, 0);
MC.moveTo(0, 0);
MC.lineTo(10, 15);
MC.lineTo(100, 15);
MC.lineTo(110, 0);
MC.lineTo(0, 0);
}
function 船移動(MC) {
MC.onEnterFrame = function() {
this._x += this.速度;
船倉1._x += this.速度;
船倉2._x += this.速度;
this.狀態 = 航行;
if (this._x>=340) {
this.行動 = false;
this.速度 *= -1;
this.TXT.TXT.text = <<===;
this.狀態 = 右岸;
delete this.onEnterFrame;
}
if (this._x<=100) {
this.行動 = false;
this.速度 *= -1;
this.TXT.TXT.text = ===>>;
this.狀態 = 左岸;
delete this.onEnterFrame;
}
};
}
function 是否能劃船(數組) {
for (var i = 0; i<數組.length; i++) {
if (數組[i].劃船 == true) {
return true;
}
}
提示信息(這條船上沒有能劃船的動物);
return false;
}
function 能否呆船上(數組) {
if (數組.length == 2) {
var TXT0 = 數組[0].名字;
var TXT1 = 數組[1].名字;
if (數組[0].大小 == 數組[1].大小 || TXT0.substring(1, 3) == TXT1.substring(1, 3)) {
return true;
}
} else {
return true;
}
提示信息(船上的大動物會吃掉小動物);
return false;
}
function 岸上(岸) {
//這個算法不好`實在想不出其他的好算法
var 大數組 = new Array();
var 小數組 = new Array();
for (var i in 左岸MC) {
if (左岸MC[i].方位 == 岸) {
if (左岸MC[i].大小 == 大) {
大數組.push(左岸MC[i]._name.substring(1, 3));
}
if (左岸MC[i].大小 == 小) {
小數組.push(左岸MC[i]._name.substring(1, 3));
}
}
}
var 小記數 = 小數組.length;
var 大記數 = 大數組.length;
if (小記數<=0) {
return true;
}
if (大記數<=0) {
return true;
}
var 記數 = 0;
for (var i = 0; i<小記數; i++) {
var 對象 = 小數組[i];
for (var n = 0; n<大記數; n++) {
if (對象 == 大數組[n]) {
記數++;
break;
}
}
}
if (記數 == 小記數) {
return true;
} else {
提示信息(岸上的大動物會吃掉小動物);
return false;
}
}
function 刪除(數組, 對象) {
for (var i = 0; i<數組.length; i++) {
if (數組[i].名字 == 對象) {
數組.splice(i, 1);
return true;
}
}
}
function 畫方塊(MC, X, Y, 寬, 高, 填充) {
if (填充 == true) {
MC.beginFill(0xFFFFFF, 100);
}
MC.lineStyle(0, 0);
MC.moveTo(X, Y);
MC.lineTo(X+寬, Y);
MC.lineTo(X+寬, 高+Y);
MC.lineTo(X, 高+Y);
MC.lineTo(X, Y);
MC.endFill();
}
function 創建河流() {
var 河水= ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;
var MC = 創建TXT_MC(this, 河流, 河水, 0, 365, 100, false);
MC.X = 0;
MC.onEnterFrame = function() {
this._x += Math.cos(this.X)*1;
this.X += 0.1;
};
}
function 提示信息(內容) {
提示MC.clear();
畫方塊(提示MC, 180, 50, 200, 70);
提示MC.計時 = 0;
提示MC[提示].removeMovieClip();
提示MC.onEnterFrame = function() {
if (this.計時 == 0) {
this._visible = true;
創建TXT_MC(提示MC, 提示, 內容, 提示MC._x+190, 提示MC._y+70, 115, false);
} else if (this.計時>30) {
this._visible = false;
delete onEnterFrame;
}
this.計時++;
};
}
function 創建結束畫面() {
左岸MC.removeMovieClip();
船MC.removeMovieClip();
}
function 返回開始() {
創建TXT_MC(_root, 開始, 重新+/n+開始, 490, 360, 100, true);
開始.onPress = function() {
loadMovie(_url, _root);
};
}
畫方塊(遮照MC, 0, 0, 550, 400, true);
_root.setMask(遮照MC);
畫方塊(this, 0, 0, 548, 398, false);
////////////////////////////////////////////////////////////
var 菜單 = new ContextMenu();
菜單.hideBuiltInItems();
var QQ = new ContextMenuItem(QQ:31559783, 實行函數);
QQ.separatorBefore = true;
菜單.customItems.push(QQ);
this.menu = 菜單;
function 實行函數() {
}

教程結束,以上就是Flash AS代碼實現智力過河小游戲,希望大家喜歡本教程!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 99re在线观看 | 国产一二区在线观看 | 亚洲国产精品99久久久久久久久 | 色性网| 日韩色影视 | 成人一区二区三区在线观看 | 草比网站 | 欧美精品免费在线观看 | 亚洲免费综合 | 久久精品一区二区 | 欧美日韩国产在线观看 | 色婷婷一区二区三区四区 | 欧美a级成人淫片免费看 | 日韩亚洲视频在线观看 | 欧美一级片在线观看 | 久久爱成人| 一级免费片 | 一区二区三区四区国产 | 色精品| 久久精品国产一区 | 可以免费看av的网址 | 亚洲精品午夜aaa久久久 | 午夜电影网址 | 91精品国产乱码久久久久久久久 | 日本天堂在线播放 | 国产精品夜夜 | k8久久久一区二区三区 | 性一级录像片片视频免费看 | 午夜精品久久久 | 日韩免费精品视频 | 日本欧美在线观看 | 欧美中文在线 | 久久精品91久久久久久再现 | 亚洲乱码一区二区三区在线观看 | 欧美日韩精品免费 | 91在线 | 亚洲 | 黄色在线观看免费 | 亚洲天堂av网 | 欧美在线视频一区 | 国产一区二区精品 | 亚洲国产精品一区二区久久 |