, поэтому у меня есть этот код:
func addSprites() {
for row in 0..<GameScene.rows {
for col in 0..<GameScene.cols {
let node = grid[row][col]
if node != nil {
addChild(node!)
node?.position = CGPoint(x: (view!.frame.width/CGFloat(GameScene.cols))*CGFloat(col), y: (view!.frame.height/CGFloat(GameScene.rows))*CGFloat(row))
print(node?.position)
}
}
}
}
, а массив сетки имеет SKSpriteNodes, и когда я его печатаю, это показывает
, что хорошо, так как у меня есть SKSpriteNode
.
addSprites()
выводит
Optional((0.0, 207.0))
Optional((59.733333587646484, 207.0))
Optional((119.46666717529297, 207.0))
Optional((179.1999969482422, 207.0))
Optional((238.93333435058594, 207.0))
Optional((298.6666564941406, 207.0))
Optional((358.3999938964844, 207.0))
Optional((418.1333312988281, 207.0))
Optional((477.8666687011719, 207.0))
Optional((537.5999755859375, 207.0))
Optional((597.3333129882812, 207.0))
Optional((657.066650390625, 207.0))
Optional((716.7999877929688, 207.0))
Optional((776.5333251953125, 207.0))
Optional((836.2666625976562, 207.0))
, что соответствует местоположению узла. Однако, как видно здесь, нет спрайтовпокажите:
, когда я печатаю местоположение касания в методе touchesBegan
и вижу точки, даже если точки были точно такими же,спрайты не показывают.Как я могу это исправить?Также я попробовал scene.scaleMode = .resizeFill
в GameViewController
, но это не помогло.