makeBackground
という関数を持つGameScene
というクラスがあります。私はそれのインスタンス(GameScene)を作成し、新しいクラスのdidMoveToViewに次のようにmakeBackgroundと呼ばれると呼ばれる別のクラスでは:別のクラスの関数へのアクセス
var gameSceneInstance:GameScene = GameScene()
gameSceneInstance.makeBackground()
しかし、私はそれを実行すると、何も起こりません!
これは、関数makeBackgroundです:
func makeBackground()
{
let bgTxt = SKTexture(imageNamed: "bg.png")
let moveBg = SKAction.moveByX(0, y: -bgTxt.size().height, duration: 5)
let replaceBg = SKAction.moveByX(0, y: bgTxt.size().height, duration: 0)
let moveBgAnimation = SKAction.repeatActionForever(SKAction.sequence([moveBg, replaceBg]))
//-----background-----
for var i:CGFloat = 0 ; i<3; i++
{
bg = SKSpriteNode(texture: bgTxt)
bg.position = CGPoint(x: CGRectGetMidX(self.frame), y: bgTxt.size().height/2 + bgTxt.size().height * i)
bg.size.width = self.frame.width
bg.runAction(moveBgAnimation)
movingObjects.addChild(bg)
}
}
は、私はそれを動作させるために、新しいクラスにmakeBackground
機能をコピー&ペーストする必要がありますか?
同様に、GameSceneクラスのdidMoveToView
には、いくつかのスプライトがあります。この新しいクラスで使用できますか?
ありがとうございます!
私は何かが起こることを確信しています。メソッドが呼び出され、実行されます。いくつかの些細な間違いがあります。 'GameScene'はSKViewですか?これを階層に追加しましたか? – Sulthan