我很擅长使用Python,而且我正试图获得一个点击计时器,以便在我的游戏中当我的玩家被击中时,它需要等待几秒才能再次被击中。
我以为我可以这样做:
while hitTimer > 0:
hitTimer -= 1
被点击会将计数器重置为10
,并要求计数器> 0
能够再次被点击,但它会快速进入。
我尝试使用非常小的数字,例如-= .00005
,但这只是让我的程序滞后。
我怎样才能让它每秒消耗1次或类似的东西?
感谢您的帮助。
答案 0 :(得分:4)
为了检查10秒,请执行以下操作:
import time
# record when person was first hit.
previousHit = time.time()
if time.time() - previousHit > 10:
# The rest of your logic for getting hit.
previousHit = time.time() # Reset the timer to get the hit again.
答案 1 :(得分:2)
使用time.clock()
检查时间并time.sleep()
等待。
永远不要依赖CPU速度来计时码。
答案 2 :(得分:1)
您只需使用time.time()
import time
lastHit = time.time()
然后将当前时间与lastHit
进行比较:
if time.time() - lastHit > NUMBER_OF_SECONDS:
# ... do seomthing about getting hit ...
lastHit = time.time()