Cjx_china 2023-06-13 23:15 采纳率: 100%
浏览 9
已结题

unity 协程能写GetKey吗

unity 协程能写GetKey吗,战旗游戏GetKey移动光标速度太快了,有什么方法能让Getkey慢一点,或者将地图放大。

  • 写回答

1条回答 默认 最新

  • 玥轩_521 2023-06-13 23:24
    关注

    可以使用协程来实现GetKey,以下是示例代码:

    IEnumerator MoveCursor()
    {
        while(true)
        {
            if(Input.GetKey(KeyCode.A))
            {
                // 光标左移
            }
            else if(Input.GetKey(KeyCode.D))
            {
                // 光标右移
            }
            else if(Input.GetKey(KeyCode.W))
            {
                // 光标上移
            }
            else if(Input.GetKey(KeyCode.S))
            {
                // 光标下移
            }
            
            yield return null; // 等待下一帧
        }
    }
    

    如果想要减缓GetKey的速度,可以在协程中添加等待时间,例如:

    IEnumerator MoveCursor()
    {
        while(true)
        {
            if(Input.GetKey(KeyCode.A))
            {
                // 光标左移
            }
            else if(Input.GetKey(KeyCode.D))
            {
                // 光标右移
            }
            else if(Input.GetKey(KeyCode.W))
            {
                // 光标上移
            }
            else if(Input.GetKey(KeyCode.S))
            {
                // 光标下移
            }
            
            yield return new WaitForSeconds(0.1f); // 等待0.1秒
        }
    }
    

    如果您想要将地图放大,可以通过修改相机的尺寸来实现,例如:

    Camera.main.orthographicSize = 5; // 将相机尺寸设置为5
    

    这将使相机显示区域变大,从而将地图放大。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月23日
  • 已采纳回答 6月15日
  • 创建了问题 6月13日

悬赏问题

  • ¥15 Fluent,液体进入旋转区域体积分数不连续
  • ¥15 课上突考,本人大脑过载,求51单片机能手
  • ¥15 java linux下将docx文件转pdf
  • ¥15 maven无法下载依赖包
  • ¥15 关于pycharm, Callable[[str],bool]作为方法参数使用时, lambda 类型不提示问题
  • ¥15 layui数据重载无效
  • ¥15 寻找了解qq家园纵横四海的程序猿。
  • ¥15 optisystem
  • ¥15 VB.NET画图时的撤销编程
  • ¥15 C# webservice 参数特殊字符处理