Я пытаюсь создать класс в SpriteKit, но я не знаю, возможно ли это.Создайте класс, который наследуется от массива SKSpriteNode в Swift
Я знаю, что:
class myClass: SKSpriteNode
{
var myVar: Int = 0
var mySecondVar: Int = 0
}
будет создать класс, который наследует от класса SKSpriteNode.
Затем, для того, чтобы создать 2 dimensionnal массив из этого класса, я использую это:
var array = [[myClass]]()
Так что я могу добавить элементы с
var elements = [myClass]()
elements.append(myClass(imageNamed: "image"))
elements.append(myClass(imageNamed: "image"))
array.append(elements)
Так вот, я могу получить доступ к MYVAR и mySecondVar использованием
array[x][y].myVar
array[x][y].mySecondVar
Но что я хочу сделать то, что mySecondVar будет варьироваться в пределах от MyClass, с О здесь это нормально, но я хочу, чтобы получить доступ к MYVAR использовании такого синтаксиса:
array[x].myVar
array[x][y].mySecondVar
И я не знаю, как я мог это сделать, я попытался это:
class myClass: [SKSpriteNode]
но это Безразлично Не работай. Не могли бы вы мне помочь? Спасибо.
Зачем вам это нужно? Предполагаемый прецедент использования подразумевает, что 'myVar' должен быть' static', но также и в этом случае я не вижу, почему нужно получить массив. Можете ли вы описать, что «myVar» представляет немного лучше? – DeFrenZ
Извините, я просто понял, что ошибся в своем посте, я положил myClass [x] .myVar вместо массива [x] .myVar, вы можете проверить новый код ниже, понимаете ли вы его лучше? – Drakalex
О, я этого даже не заметил! Но нет, не очень помогает. Если вы можете описать _why_ 'myVar' должно быть свойство массива вместо экземпляра, это поможет. В противном случае, возможно, вам нужно просто создать класс-оболочку для '[SKSpriteNode]' – DeFrenZ