AS3五子棋设计

        初学flash AS3.0编程,刚刚完成了一个五子棋的设计,接下来我在此分享一下在五子棋制作过程的一些感悟和方法(主要讲落子和悔棋两部分)。

一.准确落子

      五子棋下棋过程中,我们通过鼠标点击来落子,即便点击的位置稍有偏差还是能落到我们想要的位置。这里我们可以对棋盘见了一个鼠标侦听(board.addEventListener(MouseEvent.MOUSE_DOWN,MouseDown);),这样当鼠标点击键盘我们就能获得点击点的坐标stage.mouseX和stage.mouseY,然后通过(i = Math.round(stage.mouseX/ 30-1 );
     j = Math.round(stage.mouseY/ 30-1);30表示棋盘格子的宽度)得到i,j(i,j就是改点在棋盘上的坐标用二维数组qipan[i][j]表示),然后再将其用过转换(chess.x = 15+30 * i;chess.Y = 15+30 * i;15表示棋盘距离坐标原点的距离),这样棋子就能准确落在棋盘的(i,j)坐标处了,点击位置稍有也不会影响落子。

二.悔棋功能实现

    首先在落子的时候除了用来记录棋子qipan[i][j]={0(没有棋子).1(白棋).-1(黑棋)},再加一个二维数组qi[i][j]=步数,K(步数),在悔棋函数中通过qi[i][j]=k,找到最后一步所下的棋子坐标,然后将该点n=qipan[i][j](n用来记录最后一颗下的棋子的颜色),qipan[i][j]=0(该坐标设成没有棋子),然后通过chess_board.removeChildAt(k-1);(之前黑白棋子的影片剪辑都加在chess_board这张影片剪辑上),最后通过n判断最后一颗棋子的颜色,并反馈落子函数。
     


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值