Timer(タイマー)は、ゲーム等あらゆるアプリで必要になるコードです。Swiftで1秒毎にタイムカウントダウンするタイマーの作り方を紹介します。

こんにちは!プログラミング高校生のロットです。
今回はSwiftでタイマーを作っていきます。
基本的には、3箇所にコードを書いていきます。裏でタイマーを走らせるだけなら、ラベルはなくても結構です。
タイマー作成手順
①Class内に「Timer」と「ラベル」と「時間」を用意
②didMove内にラベルを実装し、タイマーをスタートさせる
③Class内に「timerUpdate」関数を作成
以下にコードを示します。
GameScene.swift import SpriteKit class GameScene: SKScene { //タイマーを用意する var myTimer = Timer() //残り時間表示用ラベルを用意する let timeLabel = SKLabelNode(fontNamed: "Verdana-bold") // 残り時間を用意する var timeCount = 10 override func didMove(to view: SKView) { // 背景色をつける self.backgroundColor = UIColor.white // 残り時間を表示する timeLabel.text = "Time:\(timeCount)" //timeLabelが動かないようにleft固定 timeLabel.horizontalAlignmentMode = .left timeLabel.fontSize = 100 timeLabel.fontColor = SKColor.black timeLabel.position = CGPoint(x:150, y:750) self.addChild(timeLabel) // タイマーをスタートする(1.0秒ごとにtimerUpdateを繰り返し実行) myTimer = Timer.scheduledTimer( timeInterval: 1.0, target: self, selector: #selector(timerUpdate), userInfo: nil, repeats: true) } // タイマーで実行される処理関数を作成(1.0秒ごとに繰り返し実行) @objc func timerUpdate() { // 残り秒数を 1 減らす timeCount -= 1 // 残り秒数を表示 timeLabel.text = "Time:\(timeCount)" // もし 0 になったら{}内を実行 if timeCount < 1 { // タイマーを停止させる myTimer.invalidate() } } }
timeCountの数字、タイマーのラベル位置や0になった時の内容は自分で書き換えて応用て下さい。
今回は以上です。