2016-07-29 5 views
0

私はゲームで働いていますが、問題が発生しました。最初のボタンをクリックすると2つのボタンが表示されます。最初のプレーヤーをスポーンすると2番目のボタンをクリックすると最初のプレイヤーが削除され、それは良いですが、問題は、最初のボタンをクリックするとshudが私に1つのノードのみを生成させることです。すぐにプレイヤーを変更する

私は

// Set button One 

    ButtoneOne = UIButton(frame: CGRect(x: 0, y: 0, width: frame.size.width/25, height: frame.size.height/20)) 
    ButtoneOne.center = CGPoint(x: view.frame.size.width/6.5, y: view.frame.size.height/2) 
    ButtoneOne.setImage(ButtonTextureOne, forState: .Normal) 
    ButtoneOne.addTarget(self, action: #selector(Play.PlayesrOne), forControlEvents: UIControlEvents.TouchUpInside) 
    self.view?.addSubview(ButtoneOne) 

func PlayesrOne() { 

    Player.removeFromParent() 
    PlayerTwo.removeFromParent() 

    PlayerOne = SKSpriteNode(imageNamed: "PlayerOne") 
    PlayerOne.size = CGSize(width: 150, height: 200) 
    PlayerOne.position = CGPoint(x: frame.size.width/2, y: frame.size.height/2) 
    PlayerOne.zPosition = -1 
    self.addChild(PlayerOne) 


} 

答えて

0

を忘れないでください..私が今まで私は、これは私のコードを助けてくださいで、他のボタンと第二ボタンの同じものをクリックしてTELを起動ない]をクリックしたときに、それはだけにして一つのノードを起動することができますかそれはiOS(そしてiOSだけでなく)であなたのプロパティに大文字を与える悪い態度です。私は再ファクターすべてのコードにしたくない、私は可能な限りあなたの構造や方法を維持しようとするでしょう

buttoneOne = UIButton(frame: CGRect(x: 0, y: 0, width: frame.size.width/25, height: frame.size.height/20)) 
buttoneOne.center = CGPoint(x: view.frame.size.width/6.5, y: view.frame.size.height/2) 
buttoneOne.setImage(ButtonTextureOne, forState: .Normal) 
buttoneOne.addTarget(self, action: #selector(Play.PlayesrOne), forControlEvents: UIControlEvents.TouchUpInside) 
self.view?.addSubview(buttoneOne) 

func makePlayerOne() { 
    if (self.childNodeWithName("playerOne") == nil) { 
     playerOne = SKSpriteNode(imageNamed: "PlayerOne") 
     playerOne.size = CGSize(width: 150, height: 200) 
     playerOne.position = CGPoint(x: frame.size.width/2, y: frame.size.height/2) 
     playerOne.zPosition = -1 
     playerOne.name = "playerOne" 
     self.addChild(playerOne) 
    } 
} 

func PlayesrOne() { 
    player.removeFromParent() 
    playerOne.removeFromParent() 
    playerTwo.removeFromParent() 
    makePlayerOne() 
} 

あなたはplayer2スポーンのための同じ事を作ることができる。..

関連する問題