これは私が持っているコードです。私はそれをクリックするとメニューを表示するためにゲームを一時停止したいというボタンがあります。エラーが表示されているところのコメントがあるので、私が間違っていることをうまく見ることができます。私はいつもエラーが発生しました 'Instance member isPausedはGameSceneタイプで使用できません'
はまた、私は、このコードは私のGameSceneファイルにすることになっているかどうかわからないんだけど、そうでない場合はあなたが私はそれがであるべきである1知っているようでした。手助けしようとしているため
感謝を。
//
// GameScene.swift
// Pong2
//
// Created by Hussain on 10/11/16.
// Copyright © 2016 Archetapp. All rights reserved.
//
import SpriteKit
import GameplayKit
class GameScene: SKScene {
var ball = SKSpriteNode()
var enemy = SKSpriteNode()
var main = SKSpriteNode()
var topLbl = SKLabelNode()
var btmLbl = SKLabelNode()
var score = [Int]()
@IBOutlet weak var pauseBetton: UIButton! // HERE IS MY OUTLET
override func didMove(to view: SKView) {
func pauseButton (sender: UIButton){ // HERE'S MY FUNCTION TO TRY AND PAUSE MY GAME
let pauseAction = SKAction.run {
GameScene.isPaused = true // HERE'S THE LINE I GET MY ERROR
debugPrint("Paused")
}
}
topLbl = self.childNode(withName: "topLabel") as! SKLabelNode
btmLbl = self.childNode(withName: "btmLabel") as! SKLabelNode
ball = self.childNode(withName: "ball") as! SKSpriteNode
print(self.view?.bounds.height)
enemy = self.childNode(withName: "enemy") as! SKSpriteNode
enemy.position.y = (self.frame.height/2) - 50
main = self.childNode(withName: "main") as! SKSpriteNode
main.position.y = (-self.frame.height/2) + 50
let border = SKPhysicsBody(edgeLoopFrom: self.frame)
border.friction = 0
border.restitution = 1
self.physicsBody = border
startGame()
}
}
[OK]を、おかげで、たくさんの閉鎖の 『自己』の暗黙の使用」...それはそのエラーを修正しますが、私はそれがエラーを示していることをやった理由を後に知っています; 『自己』を使用。キャプチャセマンティクスを明示的にする "? – husky
答えを修正した場合。 'isPaused = true'を' self.isPaused = true'に変更してください。 – rmaddy