Здравствуйте, никак не получается вывести результат в табличку GameCenter, всегда показывает 0, что делаю не так?
import Foundation
import UIKit
import GameKit
import SpriteKit
import AVFoundation
class gameCenter: SKScene, SKPhysicsContactDelegate, GKGameCenterControllerDelegate {
var Next1: UIButton!
var Back1: UIButton!
var score = Int()
override func didMove(to view: SKView) {
authPlayer()
scene?.backgroundColor = UIColor.black
physicsWorld.gravity = CGVector(dx: 0.0,dy: -9.8)
physicsWorld.speed = 1.0
physicsWorld.contactDelegate = self
physicsBody = SKPhysicsBody(edgeLoopFrom: scene!.frame)
self.scene?.size = CGSize(width: self.view!.bounds.size.width, height: self.view!.bounds.size.height)
let background = SKSpriteNode(imageNamed: "MenuSetting")
background.anchorPoint = CGPoint(x: 0, y: 1)
background.position = CGPoint(x: 0, y: size.height)
background.zPosition = -1000
background.size = CGSize(width: self.view!.bounds.size.width, height: self.view!.bounds.size.height)
Back1 = UIButton(frame: CGRect(origin: CGPoint(x: (self.view?.frame.size.width)! / 2 - 10, y: (self.view?.frame.size.height)! / 2 - 100), size: CGSize(width: 50, height: 50)))
Back1.setTitle("<", for: UIControlState())
Back1.titleLabel!.font = UIFont.systemFont(ofSize: 30)
Back1.setTitleColor(UIColor.white, for: UIControlState())
Back1.addTarget(self, action: #selector(gameCenter.BackS1), for: UIControlEvents.touchUpInside)
self.view?.addSubview(self.Back1)
Next1 = UIButton(frame: CGRect(origin: CGPoint(x: (self.view?.frame.size.width)! / 2 + 100, y: (self.view?.frame.size.height)! / 2 - 100), size: CGSize(width: 50, height: 50)))
Next1.setTitle(">", for: UIControlState())
Next1.titleLabel!.font = UIFont.systemFont(ofSize: 30)
Next1.setTitleColor(UIColor.white, for: UIControlState())
Next1.addTarget(self, action: #selector(gameCenter.NextS1), for: UIControlEvents.touchUpInside)
self.view?.addSubview(self.Next1)
let backgroun2 = SKSpriteNode(imageNamed: "12")
backgroun2.size = CGSize(width: self.view!.bounds.size.width, height: self.view!.bounds.size.height)
backgroun2.zPosition = 1050
backgroun2.position = CGPoint(x: frame.midX, y: frame.size.height / 2)
self.addChild(backgroun2)
}
func BackS1(){
saveHighscore(score)
showLeaderBoard()
}
func NextS1(){
score += 1
print("\(score)")
}
func authPlayer(){
let localPlayer = GKLocalPlayer.localPlayer()
localPlayer.authenticateHandler = {
(view, error) in
if view != nil {
/// self.present(view!, animated: true, completion: nil)
} else {
print(GKLocalPlayer.localPlayer().isAuthenticated)
}
}
}
func saveHighscore(_ number : Int){
if GKLocalPlayer.localPlayer().isAuthenticated {
let scoreReporter = GKScore(leaderboardIdentifier: "leaderboardID")
scoreReporter.value = Int64(number)
let scoreArray : [GKScore] = [scoreReporter]
GKScore.report(scoreArray, withCompletionHandler: nil)
}
}
func showLeaderBoard(){
let viewController = self.view?.window?.rootViewController
let gcvc = GKGameCenterViewController()
gcvc.gameCenterDelegate = self
viewController?.present(gcvc, animated: true, completion: nil)
}
func gameCenterViewControllerDidFinish(_ gameCenterViewController: GKGameCenterViewController) {
gameCenterViewController.dismiss(animated: true, completion: nil)
}
}