五子棋的规则大家肯定都了解,也是大家在百忙之中娱乐的一部分,也都在网上玩过五子棋的游戏,那么大家有没有想过自己编写一个五子棋游戏呢。很多人都感觉做“游戏”这个词汇听着就很难,不知道怎么去实现。那么“接下来就是见证奇迹的时刻”。
思路:
(1)准备好棋盘图片,棋子图片(白棋、黑棋),获胜时的图片共四张。想要图片资源可以点击此链接: https://pan.baidu.com/s/13Ajqv29YXL2zWlDNk63rxA 提取码: rvh2 ;最好将图片文件夹放在自己要创建的项目里。
(2)以下是编写单机五子棋程序的几个重要部分:
【1】创建初始化棋盘方法initChessSquare(x,y):根据棋盘图片的交叉点个数,遍历其所有交叉点坐标。
【2】创建监听各种事件的方法eventHander():如:鼠标点击退出位置,程序能实现退出响应(退出很重要,因为游戏界面的显示就是一个死循环whileTrue;一个不断刷新界面(背景图片)的过程,因此,不做退出操作,此窗口会进入死锁状态,用户将无法操作);鼠标只有点击棋盘的交叉点位置时,才通过pygame.mouse.get_pos()获取鼠标点击的坐标并给出相应的棋子类型value。通过列表封装后,再存入到全局列表initChessList中。
【3】创建判断输赢的规则方法judgeResult(i,j,value):创建标志位flag为False,当满足赢的规则时,标志位flag再为True;判断横向、纵向、左斜向、右斜向有没有出现5连(在边缘依次向内逐一遍历,是否五个棋子的类型一样,一样则为赢,即五子连珠)
【4】创建主方法main():其中包含初始化游戏环境pygame.init();绘制游戏窗口pygame.display.set_mode((600,600),0,0)(其中第一个参数(600,600)为设定窗口的大小,第二个参数为标志位,如果不用什么特性就指定为0(指定为FULLSCREEN时,绘制的是一个全屏窗口,如果没有相应的退出机制,只有按 菜单键 才能跳回之前界面),第三个参数为色深);通过pygame.image.load(“图片路径”)的方法加载棋子以及判赢的图片;遍历全局列表initChessList中的子列表,再遍历子列表中封装的棋子类型value,通过之前的响应值来绘制相应棋子类型的图片;当其中一方为赢时,清空棋盘ÿ