Я очень новичок в SpriteKit и разработке игр в целом, поэтому я постараюсь сформулировать это как можно лучше.
В настоящее время я пытаюсь создать простую 2-стороннюю скроллерную игру с использованием SpriteKit, чтобы изучить основы разработки игры для iPhone. Я пытаюсь понять концепцию бонусов, и, по сути, я хочу перерисовать некоторые узлы, которые уже находятся на экране после сбора питания. У меня есть весь код, работающий, чтобы зарегистрировать, что игрок связался с включением питания, и настройки происходят на вновь нарисованных узлах, приходящих с экрана, но корректировки не происходят немедленно для узлов, уже находящихся на экране. У меня есть круг вокруг узлов, размер которого я хочу уменьшить.
Я пытался добавить код в методе update
в GameScene.swift
, похожий на:
if powerUp {
for node in allNodesOnScreen {
let nodeForEdit = node.childNode(withName: "nodeName") as? SKEffectNode
for i in 0...3 {
// Draw circle here (circle is in three parts)
nodeForEdit?.addChild(circle)
}
}
}
Примечание: allNodesOnScreen
- это массив, который я добавляю, когда рисую новые узлы на экране
Мне не удалось заставить это работать так, как я надеялся, и я играл с ним, поскольку у меня возникали сбои при добавлении узлов в качестве детей, у которых уже есть родители (предположительно, потому что они уже нарисованы на экране) с родителем).
Я очень хорошо знаю, что могу сильно усложнить это, но любая помощь будет очень признательна, и я рад предоставить больше информации о том, что я пробовал, если это поможет прояснить ситуацию.