如果在 Unity 中按下任何移动键,如何删除播放器

问题描述 投票:0回答:1

我正在创建一个节奏游戏,玩家可以用背部阻挡即将到来的攻击。为此,我为每个阻挡方向创建了一个防御动画。这个想法是为相应的移动键激活精灵渲染器,并停用空闲位置。不管出于什么原因,下面的代码都停留在说没有按键被按下:

    public void positionDefault()
    {
        if (keyIsBeingPressed == false)
        {
            // Show the default sprite if no movement key is being pressed
            abbyDefaultPosition.GetComponent<SpriteRenderer>().enabled = true;
            UnityEngine.Debug.Log("no key is being pressed!");
        }
        else
        {
            // Hide the default sprite if any movement key is being pressed
            abbyDefaultPosition.GetComponent<SpriteRenderer>().enabled = false;
            UnityEngine.Debug.Log("a key is being pressed!");
        }
    }
}

这是布尔值 keyIsBeingPressed:

keyIsBeingPressed = (Input.GetKey(KeyCode.UpArrow) || Input.GetKey(KeyCode.DownArrow) || Input.GetKey(KeyCode.LeftArrow) || Input.GetKey(KeyCode.RightArrow));

我试过只使用一个 | 来制作布尔值。

我也试过使布尔值成为 != 语句。

Dank je van jij hulp!

c# unity3d
1个回答
0
投票

对不起,我只是把布尔值放在 Start 函数而不是 Update 函数中。

© www.soinside.com 2019 - 2024. All rights reserved.