使用自定义时间创建游戏时钟

本文关键字:游戏 时钟 创建 时间 自定义 | 更新日期: 2023-09-27 18:34:22

我试图使GameClock像真正的时钟一样,但使用自定义时间。时钟正在运行,但它正在延迟,我找不到问题。感谢您的帮助。

IEnumerator Start()
{
    while (true) {
        Sec = DateTime.Now.Second;
        if (Hour == 23 && Min == 59 && Sec == 0){
            Hour = 0;
            Min = 0;
        } else if (Min == 59 && Sec == 0){
            Min = 0;
            Hour += 1;
        } else if (Sec == 0) {
            Min += 1;
        } 
        yield return new WaitForSeconds (1f);
    }
}

使用自定义时间创建游戏时钟

我认为它应该是这样的

while (true) {
    Sec = DateTime.Now.Second;
    if (Hour == 23 && Min == 59 && Sec == 59){
        Hour = 0;
        Min = 0;
    } else if (Min == 59 && Sec == 59){
        Min = 0;
        Hour += 1;
    } else if (Sec == 59) {
        Min += 1;
    } 
    yield return new WaitForSeconds (1f);
}

我不明白为什么你做所有这些工作,当你可以轻松打印出来时:

    Debug.Log(System.DateTime.Now.ToString("hh:mm:ss"));
    Debug.Log(System.DateTime.Now.Hour.ToString());
    Debug.Log(System.DateTime.Now.Minute.ToString());
    Debug.Log(System.DateTime.Now.Second.ToString());