Unity3D学习:井子棋实现

在做这个之前我是还没学过C#或者Java的,只懂C++和C,因此,我需要掌握一些预备知识~~~

必要预备知识:


Unity3D学习:井子棋实现_第1张图片

知道这些之后就差不多可以开始实现井子棋了,主要思路是用一个int变量代表轮到哪一方(下图中的player),用一个3*3二维int数组(下图中的blocks数组)模拟井子棋相应位置,初始值为0,如果O方在某个位置下了,则该位置设1,X方则-1。然后在OnGUI函数(每一帧都调用一次)中实现:对应值1则在相应位置创建显示O的button,对应值0则显示X,其他则创建空的button;还要加上一个判断函数(下图中的isWin函数),判断是否有一方赢或者平局。

先看判断函数isWin函数的代码,分为四部分即横向纵向斜线以及平局的判断,应该挺通俗易懂的。:

Unity3D学习:井子棋实现_第2张图片

接下来是重置函数reset,player为1 则O方,-1为X方,默认O方先开始下:

Unity3D学习:井子棋实现_第3张图片

接下来到了主体部分:

Unity3D学习:井子棋实现_第4张图片

然后,把代码文件拖到Main Camera中,井字棋就可以运行了~~~

Unity3D学习:井子棋实现_第5张图片

你可能感兴趣的:(unity学习)