Flash遊戲製作 五子連珠(二)

2021-08-25 03:14:11 字數 1614 閱讀 3481

// 顯示棋子

_root.display = "xpos : " + (x + 1);

temp = chr ( y + 65);

_root.display1 = "ypos : " + temp;

_root.playnow = "player";

//判斷是否獲勝

xx = x;

yy = y;

for (k=0; k 6)

x = xx;

y = yy;

while ((_root.table[y][x] == 2) and (y+_root.dir[k+4][1] = -1) and (x+_root.dir[k+4][0] = -1))

if (_root.a_result == 6) }}

if (_root.playnow =="nobody")

}c:新建乙個movie clip元件,並命名為bb,此元件用來計算電腦如何走棋,進入元件編輯狀態後,在圖層layer1繪製乙個有填充色的矩形,然後在第5楨插入乙個關鍵楨,在同樣位置繪製乙個大小相同填充色不同的矩形。新建乙個圖層,在矩形裡輸入提示文字:電腦走棋,然後再新建乙個圖層action,在第一楨新增as: stop();,在第8楨插入乙個關鍵楨,在此楨新增如下as:

if (_root.playnow == "computer")

}if (_root.computer[j*15+i][k] > max_computer)

if (_root.player[j*15+i][k] > max_player) }}

}if (max_computer > max_player) else

// 繪製棋子

num = y * 15 + x;

removemovieclip(_root.b add num);

duplicatemovieclip(_root.white, "white" add num, num + 300);

setproperty(_root.white add num, _x, 34.7 + x * 20);

setproperty(_root.white add num, _y, 34.7 + y * 20);

_root.table[y][x] = 2;

// 顯示棋子

_root.display = "xpos : " + (x + 1);

temp = chr ( y + 65);

_root.display1 = "ypos : " + temp;

_root.playnow = "player";

// 判斷是否獲勝

xx = x;

yy = y;

for (k=0; k 6)

x = xx;

y = yy;

while ((_root.table[y][x] == 2) and (y+_root.dir[k+4][1] = -1) and (x+_root.dir[k+4][0] = -1))

if (_root.a_result == 6) }}

// 遊戲結束

if (_root.playnow =="nobody")

}最後的時間線如圖6所示:

[img]

乙個連珠五子棋的演算法

為了實現連珠六子及六子以上自殺的功能,中間沒有使用break及return 語句,執行效率有所降低。注 1 使用的是c 語法。2 如果 五 子 六 子 連 按自殺處理。3 三三禁軍功能還沒有實現,以後會進一步完善。晚輩學習c 的時間不長,還望前輩們多多指教。是否贏 棋盤中的所有棋子 所下棋子的最後乙...

乙個連珠五子棋判斷是否取勝的方法(二)

是否贏 棋盤中的所有棋子 要檢索的棋子的位置 返回連續棋子的最大個數 是否贏 public virtual bool win color arrcolor,point p,out int maxnum num 0 歸零 for int i 0 i 9 i 從 左下角 到 右上角 的九子範圍內檢索連續...

五子棋Pro 最好玩的五子棋遊戲

五子棋是一種兩人對弈的純策略型漢族棋類益智遊戲,棋具與圍棋通用,由中國古代漢族人發明,起源於中國上古時代的傳統黑白棋種之一。主要流行於華人和漢字文化圈的國家以及歐美一些地區。容易上手,老少皆宜,而且趣味橫生,引人入勝 不僅能增強思維能力,提高智力,而且富含哲理,有助於修身養性。1 多種遊戲模式 1 ...