前提・実現したいこと
海外のYouTuberの動画を参考にして、33のまるばつゲームを模写しました。その際に、44を作成したら、面白いのではないかと思い、挑戦しました。
○と✖️を交互に押すことや一度押したものは、押せないようなものは実装できました。
今のコードだと、3つ揃えると勝ちになっています。これを、4つ揃えるとかつものにしたいです。
ご教授していただけると嬉しいです。
該当のソースコード
import UIKit class ViewController: UIViewController { var activePlayer = 1 //cross var gameState = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] let winningCombinations = [[0,1,2,3],[4,5,6,7],[8,9,10,11],[12,13,14,15],[0,4,8,12],[1,5,9,12],[2,6,10,14],[3,7,11,15]] var gameIsActive = true @IBAction func action(_ sender: AnyObject) { if (gameState[sender.tag-1] == 0 && gameIsActive == true) { gameState[sender.tag-1] = activePlayer if (activePlayer == 1) { sender.setImage(UIImage(named: "Cross.png"),for: UIControl.State()) activePlayer = 2 } else { sender.setImage(UIImage(named: "Nought.png"),for: UIControl.State()) activePlayer = 1 } } for combination in winningCombinations { if gameState[combination[0]] != 0 && gameState[combination[0]] == gameState[combination[1]] && gameState[combination[1]] == gameState[combination[2]] { gameIsActive = false if gameState[combination[0]] == 1 { print("CROSS") } else { print("NOUGHT") } } } } override func viewDidLoad() { super.viewDidLoad() } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } }
補足情報(FW/ツールのバージョンなど)
このような感じでシンプルなものになっています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/19 02:15
2020/10/19 02:51
2020/10/19 03:20
2020/10/19 03:28
2020/10/19 05:25