Как создать SKSpriteNode спрайтекит Swift 3

У меня есть космический шутер для 2 игроков, и у меня проблемы со стрельбой. В настоящее время у меня есть корабль, который перемещает свое положение х пальцем. Я хочу, чтобы он стрелял прямо, когда пользователь нажимает кнопку "огонь". Вот мой вопрос. Как я могу создать свою пулю (SKSpriteNode) на кончике пистолета и стрелять вверх, когда пользователь нажимает "огонь"?

1 ответ

Решение

Это довольно просто, но вам нужно:

  1. Создать новый спрайт для пули
  2. Расположите пулю в том же месте, что и корабль
  3. Сделайте так, чтобы пуля переместилась в верхнюю часть экрана, а затем исчезла.

например

let bullet = SKSPriteNode(ImageNames: "bullet.png")
bullet.position = ship.position
bullet.zPosition = ship.zPosition - 1 // Bullet is under the ship
let bulletMove = SKAction.moveTo(y: frame.size.height, duration: 2)   
let bulletRemove = SKAction.removeFromParent()
addChild(bullet)
bullet.run(SKAction.sequence([bulletMove, bulletRemove])
Другие вопросы по тегам