создать щит на моего персонажа! (прикрепить 2 спрайта) - PullRequest
0 голосов
/ 22 апреля 2020

Я довольно новичок в мире SpriteKit, я обычно работаю с gamemakerstudio2. В любом случае, у меня есть проблема, в основном я не знаю, как прикрепить щит над своим персонажем, когда мой персонаж поднимет силу. Я знаю, что такое столкновение, но я не могу понять, как решить проблему с прикреплением изображения к другому, а также перемещать их одновременно! любой намек? Я не знаю, может быть, с помощью Physicjoint я могу справиться с этим, но я хочу что-то другое (в Game Maker я просто фиксирую точку на объекте, и изображение будет следовать за объектом (установка x и y)) извините за мой плохой Engli sh а может за глупый вопрос! Спасибо всем, кто мог на это ответить! хорошего дня и заботы

1 Ответ

0 голосов
/ 22 апреля 2020

Просто добавьте его в качестве спрайта с более высоким значением zPosition для вашего персонажа, а затем создайте несколько функций для включения и выключения его в подклассе вашего игрока

class Player: SKSpriteNode {

    private var character: SKSpriteNode!
    private var isInvinsible = false

    init() {
        super.init(texture: nil, color: .clear, size: CGSize.zero)

        //setup your player code
        character = SKSpriteNode(imageNamed: "hero")
        character.zPosition = 1
        addChild(character)

        setupShield()
    }

    func setupShield() {
        let shield = SKSpriteNode(imageNamed: "shield")
        shield.zPosition = 10
        shield.isHidden = true
        addChild(shield)
    }

    func showShield() {
        shield.isHidden = false
        isInvinsible = true
    }

    func hideShield() {
        shield.isHidden = true
        isInvinsible = false
    }
}
...