Я использую следующий код для создания случайного изображения для игрока в моей игре.Настройка имени для SKSpriteNode?
var playerTexture = [SKTexture]()
playerTexture.append(SKTexture(imageNamed: “red”))
playerTexture.append(SKTexture(imageNamed: “blue”))
playerTexture.append(SKTexture(imageNamed: “green”))
let rand = Int(arc4random_uniform(UInt32(playerTexture.count)))
let chosenColor = playerTexture[rand] as SKTexture
let playerSkin = chosenColor
Код выше генерирует случайный SKTexture (красный, синий или зеленый), называемый playerSkin.
player = SKSpriteNode(texture: playerSkin)
player.size = CGSize(width: 50, height: 50)
player.position = location
self.addChild(player)
player.name = chosenColor.description
Тогда это следующая часть кода создает игрока как SKSpriteNode и присваивает ему случайную текстуру красного, синего или зеленого цвета. НО основные вещи, это код присваивает player.name на случайно выбранное изображение с помощью:
player.name = chosenColor.description
Затем я проверяю имя игрока, используя печать.
print(player.name)
Однако, когда я проверяю имя игрока, он появляется в качестве одного из следующих действий в зависимости от того, что случайное изображение было выбрано:
Дополнительно (»\„красный \“(120 х 120) ")
Дополнительно (" \ 'синий \' (120 х 120) ")
Дополнительно (" \ 'зеленый \' (120 х 120) ")
Мои изображения называются" красный «синий» и «зеленый» и находятся в Assets.xc в папке Xcode.
Мои изображения 120 x 120, но почему эти длинные случайные имена появляются? Как я могу установить только «красный», «синий» или «зеленый» как имя игрока?
Мне нужно, чтобы имя было ТОЧНО «красным», «синим» или «зеленым», потому что я хочу использовать player.name позже для другой функции.
Right. Невозможно получить имя из самой «SKTexture», поэтому вам нужно сохранить строку, которую вы использовали для ее создания. (Один из способов упростить - это * только * сохранить строку и инициализировать встроенную строку SKTexture при назначении 'selectedColor'.) – andyvn22
Спасибо claassenApps! Это был самый простой способ! Я новичок в кодировании, так что это было прекрасно. Ура! – Questions