所以,我正在做一个教程,几乎我们所做的唯一动画就是在MainCamera中为播放器制作动画。
现在,我想为GameplayScene中随机生成的射弹设置动画。
我知道了,但是我仍然没有得到想要在动画中使用SKSpriteNode中的[SKTexture]的结果。我现在有这个:
func spawnItem(camera: SKCameraNode) -> SKSpriteNode {
let item: SKSpriteNode?
for i in 1...2{
let nombre = "blood\(i)"
rocketAnimation.append(SKTexture(imageNamed: nombre))
print("Inside the appending of images for animation!")
}
animateRocketAction = SKAction.animate(with: rocketAnimation, timePerFrame: 0.20, resize: false, restore: false )
self.run(SKAction.repeatForever(animateRocketAction))
if Int(randomBetweenNumbers(firstNum: 0, secondNum: 10)) >= 6 {
item = SKSpriteNode(imageNamed: "blood1")
item?.name = "blood1"
item?.setScale(1.5)
item?.physicsBody = SKPhysicsBody(rectangleOf: item!.size)
}
else{
item = SKSpriteNode(imageNamed: "carrot")
item?.name = "carrot"
item?.setScale(0.5)
item?.physicsBody = SKPhysicsBody(circleOfRadius: item!.size.height / 2)
}
item!.physicsBody?.affectedByGravity = false
item?.physicsBody?.categoryBitMask = ColliderType.ROCKET_AND_COLLECTABLES
item?.zPosition = 4
item?.anchorPoint = CGPoint(x: 0.5, y: 0.5)
item?.position.x = camera.position.x + 900
item?.position.y = randomBetweenNumbers(firstNum: minY, secondNum: maxY)
return (item)!
}
我也尝试做SKSpriteNode(texture:rocketAnimation),显然,我使用的是图像列表,所以它不允许我这么做。