Измените эту строку кода:
addBalken(xScale: 1.5, yScale: 1, name: "//ba1", xPoint: 0)
на:
addBalken(xScale: 1.5, yScale: 1, name: "ba1", xPoint: 0)
//
применяется только при поиске узла, поэтому сохраняйте следующие символы в этой строке:
let balke1 = self.childNode(withName: "//ba1") as! SKSpriteNode
РЕДАКТИРОВАТЬ:
Я думаю, что основной причиной вашей проблемы является то, что вы забыли вызвать addChild
в вашей функции addBalken
.Простого создания узла недостаточно.Узел также должен быть добавлен к сцене.Итак, это окончательный код:
func addBalken(xScale: CGFloat, yScale: CGFloat, name: String, xPoint: CGFloat) {
let balken = SKSpriteNode(imageNamed: "Balken")
balken.anchorPoint = CGPoint.zero
balken.position = CGPoint(x: self.size.width + (2 * balken.size.width) + xPoint, y: bottom1.size.height - 16)
balken.zPosition = 1
balken.xScale = xScale
balken.yScale = yScale
balken.name = name
//add the node to the scene
addChild(balken)
}