使用多个变量和while循环跟踪播放时间

时间:2016-04-11 11:26:22

标签: c++ time while-loop sfml

我想在我的游戏中添加一个模式,用于跟踪玩家完成游戏所需的时间。

我目前的解决方案是:我有四个变量(由于各种原因)跟踪时间:

CREATE PROCEDURE prc_saveProduct
(
    IN inputuserEmail VARCHAR(255),
    inputproductName VARCHAR(255),
    inputpoints INT(11),
)
BEGIN 
    SET @AdminID = (SELECT AdminID FROM ADMIN WHERE email = inputuserEmail );

    INSERT INTO PRODUCTS(AdminID, productName, points)
    VALUES (@AdminID, inputproductName, inputpoints);
END

每当我更新游戏时,我都会将当前增量时间增加int timerMilliseconds_= 0; int timerSeconds_ = 0; int timerMinutes_ = 0; int timerHours_ = 0; 并更新值。它看起来像这样:

timerMilliseconds_

这段代码似乎有效,但对我来说看起来很奇怪......

这些循环有意义吗?我是否过度工程?

我知道这几乎是值得代码的,但我想我可以在这里得到更好的答案!谢谢!

1 个答案:

答案 0 :(得分:4)

重复减法计数相当于(整数)除法;余下的是剩下的 所以你可以使用算术:

timerSeconds = timerMilliseconds / 1000;
timerMilliseconds = timerMilliseconds % 1000;
timerMinutes = timerSeconds / 60;
timerSeconds = timerSeconds % 60;
timerHours = timerMinutes / 60;
timerMinutes = timerMinutes % 60;