直接上代码
using UnityEngine;
using System.Collections;
public class hw1 : MonoBehaviour {
private string str;
private int player;
private float buttonsize;
private float buttonXposition;
private float buttonYposition;
private string[] c;
private int[] Xscore;
private int[] Oscore;
// Use this for initialization
void Start () {
str = "Gaming";
player = 0;
buttonsize = 50;
buttonXposition = 10;
buttonYposition = 10;
c = new string[10];
for (int i = 0; i <= 9; i++) {
c [i] = " ";
}
Xscore = new int[10];
Oscore = new int[10];
for (int i = 0; i <= 9; i++) {
Xscore[i] = 0;
Oscore [i] = 0;
}
}
// Update is called once per frame
void Update () {
}
void OnGUI(){
// show buttons
for(int i = 0;i<=2;i++){
for(int j=0; j<=2; j++){
float x = buttonXposition + j * buttonsize;
float y = buttonYposition + i * buttonsize;
if(GUI.Button(new Rect(x,y,buttonsize,buttonsize),c[i*3+j])){
if (player == 0) {
c [i * 3 + j] = "X";
Xscore [i * 3 + j] = 1;
if(Judage(Xscore)){
str = "Xplayer Win!";
}
player = 1;
} else {
c[i*3 +j] = "O";
Oscore [i * 3 + j] = 1;
if(Judage(Oscore)){
str = "Oplayer Win!";
}
player = 0;
}
}
//GUI.Button(new Rect(10,10,20,20),"x");
}
}
// show restart button
if(GUI.Button(new Rect(buttonXposition,buttonYposition+3*buttonsize,buttonsize*3,buttonsize),"Restart")){
restart ();
}
//show the lable
GUI.Label(new Rect(buttonsize*3+buttonXposition+10,buttonYposition,200,50),str);
}
bool Judage(int[] f){
if(f[0] == 1 && f[1] == 1 && f[2] == 1){
return true;
} else if (f[3] == 1 && f[4] == 1 && f[5] == 1) {
return true;
} else if (f[6] == 1 && f[7] == 1 && f[8] == 1) {
return true;
} else if (f[0] == 1 && f[3] == 1 && f[6] == 1) {
return true;
} else if (f[1] == 1 && f[4] == 1 && f[7] == 1) {
return true;
} else if (f[2] == 1 && f[5] == 1 && f[8] == 1) {
return true;
} else if (f[0] == 1 && f[4] == 1 && f[8] == 1) {
return true;
} else if (f[2] == 1 && f[4] == 1 && f[6] == 1) {
return true;
} else {
return false;
}
}
void restart(){
str = "Gaming";
player = 0;
for (int i = 0; i <= 9; i++) {
c [i] = " ";
}
for (int i = 0; i <= 9; i++) {
Xscore[i] = 0;
Oscore [i] = 0;
}
}
}