目录
- public static DateTime GetSystemStartupTime()
- {
- return DateTime.Now.AddMilliseconds(-Environment.TickCount);
- }
在游戏启动时获取MobileBoot的时间戳记为 Boot.Old。
那么就可以在下次判定奖励获取时,计入一个 Boot.New-Boot.Old的时间差 offset修正,防止改时间的作弊行为。包含防改时间作弊的计算奖励时间差伪代码如下:
- // 游戏启动时记录
- DateTime bootOld = GetBootDate();
- DateTime bootNew = GetBootDate();
-
- int rewardHeardCount = ((NowTime - LastRewardTime) - (bootNew - bootOld)) / 30;