宣告變數:
public texture2d o;
public texture2d x;
guistyle mystyle;
private int turn = 1;
/*記錄誰的回合:turn=1為⚪,turn==2為×*/
int board = new int[3] ;
reset()函式:用於重新開始遊戲
/*重新開局*/
void reset()
}debug.log("game reset");
}
check()函式:檢查遊戲是否結束:未結束返回0,o勝利返回1,x勝利返回2,平局返回3。
/*檢查勝利條件*/
int check()
}/*縱線獲勝*/
for (int i = 0; i < 3; i++)
}/*斜線獲勝*/
if (board[1][1] != 0 &&
board[0][0]== board[1][1] && board[2][2] == board[1][1] ||
board[0][2] == board[1][1] && board[2][0] == board[1][1])
/*對局還沒結束*/
for (int i = 0; i < 3; ++i)
}/*平局*/
return 3;
}
display_result()函式:顯示目前的遊戲狀態。
/*顯示對局情況*/
void display_result(int res)
else if (res == 1)
else if (res == 2)
else if (res == 3)
}
void ongui()
else if (board[i][j] == 2)
if(gui.button(new rect(m - 150 + i * 100, 200 + j * 100, 100, 100), ""))
else
} }}}
display_result(res);
}
可能存在的問題及解決方案:
可能存在井字棋顯示不全的問題,此時把視野調至標準的1024*768即可。可能存在預設物件未繫結的問題,此時把o物件繫結red_circle,把x物件繫結red_cha即可。
Unity3D遊戲開發
入門級unity安裝教程 一 unity五大面板 unity3d的介紹 1 介面 選單 面板 元件 unity5.x 編輯器介紹 unity開啟篇 一 滑鼠右鍵 wsadeq前後左右上下移動 shift加速移動 滑鼠右鍵旋轉檢視 滑鼠中鍵移動檢視 alt 右鍵縮放 alt 左鍵旋轉物體視角 q移動場...
Unity3D遊戲開發初探
1 如何在遊戲指令碼程式中建立物件而不是一開始就建立好物件?使用gameobject的靜態方法 createprimitive view code 其中在createcube方法中,使用gameobject.createprimitive方法來建立cube型別的遊戲物件例項,設定了它出現的座標並為它...
Unity 3D 坦克大戰遊戲收穫
功能很多的指令碼 通常情況下不能適應特殊情況 最好是乙個指令碼只做一件事情 這樣復用率會很高 乙個指令碼寫完以後很多地方都可以用 比如說 移動的指令碼 movement.cs 只處理監聽鍵盤按鍵 和 對應的移動處理 攻擊指令碼 attack 只處理攻擊 遊戲中 坦克的血量顯示就是用的ugui中的 s...