Nought
How do I use Nought
Below are practical examples compiled from projects for learning and reference purposes
Featured Snippets
Line | Code | Ex.. |
---|---|---|
48 | case GameState.NoughtWin: | 1 |
42 | spriteNought.SetActive(false); | 2 |
55 | Player2.Type = Seed.Nought; | 3 |
145 | Player2 = new Player("Player O", 0, Seed.Nought); | 4 |
181 | case Seed.Nought: | 5 |
File name: Result.cs
Copy
41 private void OnGameResult(Game game)
42 {
43 switch (game.CurrentState)
44 {
45 case GameState.CrossWin:
46 label.text = "X WIN!";
47 break;
48 case GameState.NoughtWin:
49 label.text = "O WIN!";
50 break;
51 case GameState.Draw:
52 label.text = "DRAW!";
53 break;
54 }
55
56 Show();
57 }
File name: Cell.cs
Copy
34 public void Set(Seed seed)
35 {
36 Content = seed;
37
38 switch (seed)
39 {
40 case Seed.Empty:
41 spriteCross.SetActive(false);
42 spriteNought.SetActive(false);
43 break;
44 case Seed.Cross:
45 spriteCross.SetActive(true);
46 spriteNought.SetActive(false);
47 break;
48 case Seed.Nought:
49 spriteCross.SetActive(false);
50 spriteNought.SetActive(true);
51 break;
52 }
53 }
File name: Game.cs
Copy
40 public void NewGame()
41 {
42 board.gameObject.SetActive(true);
43 board.Clear();
44 board.SetPlayer(Seed.Cross);
45 CurrentState = GameState.Playing;
46
47 if (NetworkService.IsConnected)
48 {
49 if (NetworkService.IsMaster)
50 {
51 Player1.Name = NetworkService.PlayerName;
52 Player2.Name = NetworkService.OpponentName;
53
54 Player1.Type = Seed.Cross;
55 Player2.Type = Seed.Nought;
56 board.SetPlayer(Seed.Cross);
57
58 NetworkService.SendNewGameStarted();
59 }
60 else
61 {
62 Player1.Name = NetworkService.OpponentName;
63 Player2.Name = NetworkService.PlayerName;
64
65 Player1.Type = Seed.Nought;
66 Player2.Type = Seed.Cross;
67 board.SetPlayer(Seed.Empty);
68 }
69 }
70
71 OnGameStartSignal.Dispatch(this);
72 }
File name: Game.cs
Copy
142 private void Reset()
143 {
144 Player1 = new Player("Player X", 0, Seed.Cross);
145 Player2 = new Player("Player O", 0, Seed.Nought);
146 }
File name: Game.cs
Copy
169 private void OnBoardChange(Seed player, int row, int col)
170 {
171 Seed nextPlayer = Seed.Empty;
172
173 if (board.HasWon(player))
174 {
175 switch (player)
176 {
177 case Seed.Cross:
178 CurrentState = GameState.CrossWin;
179 Player1.Score++;
180 break;
181 case Seed.Nought:
182 CurrentState = GameState.NoughtWin;
183 Player2.Score++;
184 break;
185 }
186
187 OnGameResultSignal.Dispatch(this);
188 }
189 else if (board.IsDraw())
190 {
191 CurrentState = GameState.Draw;
192 OnGameResultSignal.Dispatch(this);
193 }
194 else
195 {
196 nextPlayer = player == Seed.Cross ? Seed.Nought : Seed.Cross;
197 }
198
199 board.SetPlayer(nextPlayer);
200
201 if (NetworkService.IsConnected && player == Player1.Type)
202 {
203 board.SetPlayer(Seed.Empty);
204 NetworkService.SendBoardChange(player, row, col);
205 }
206 }
Nought 151 lượt xem
Gõ tìm kiếm nhanh...