Как изменить цвет нескольких SKShapeNode? - PullRequest
0 голосов
/ 22 апреля 2020

Я пытаюсь создать простую дро-игру с SpriteKit, чтобы узнать о iOS dev. Каждый раз, когда пользователь нажимает на экран, создается временный SKShapeNode. Когда пользователь убирает палец с экрана, я получаю все координаты этого SKShapeNode, чтобы вставить их в tabSKNodePaths, стереть его и создать новый постоянный SKShapeNode:

var tabSKNodePaths: [CGMutablePath] = []

func drawEveryShapesNodes(){
    for pathNode in tabSKNodePaths {
        let shapeNode = SKShapeNode()
        shapeNode.path = pathNode
        shapeNode.fillColor = .clear
        shapeNode.lineWidth = 1
        shapeNode.name = "line"
        shapeNode.strokeColor = ColorToChange
        shapeNode.lineCap = .round
        shapeNode.glowWidth = 1
        addChild(shapeNode)
    }
}

1 - Есть идея или / и код правильный?

Однако я сталкиваюсь с проблемой, когда хочу изменить цвет только одного SKShapeNode: он меняет цвет всех shapeNode, когда я хочу, чтобы он изменял цвет только для следующих узлов.

shapeNode.strokeColor = ColorToChange

2- Как мне это сделать?

...