在我的角色上创建一个盾牌!(附上 2 个精灵)

create a shield on my character!(attach 2 sprites)

我是 SpriteKit 世界的新手,我通常使用 gamemakerstudio2。无论如何我有一个问题,基本上我不知道如何在我的角色获得能量后在我的角色上方附加一个盾牌。我知道碰撞部分,但我不知道如何解决将图像附加到另一个图像并同时移动的问题!有什么提示吗?我不知道也许使用 physicjoint 我可以做到这一点,但我想要一些不同的东西(在游戏制作者中我只是在一个物体上固定一个点并且图像将跟随物体(设置 x 和 y))抱歉我的英语不好,也许对于愚蠢的问题!感谢所有可以回答的人!祝你有美好的一天,保重

只需将它作为具有更高 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
    }
}