Je codifie Mario en utilisant Pygame et je codifie les blocs en ce moment. Je veux créer une minuterie pour que lorsque je frappe le bloc après une seconde, le bloc retourne à sa position d'origine pour faire l'animation de frappe. Le problème est que lorsque le chronomètre est en veille, il gèle tout le jeu pendant toute la durée du chronomètre. J'ai besoin du code pour s'exécuter et après une seconde, le bloc de code précédent doit être activé.
J'ai essayé d'utiliser le mode veille pour faire le chronomètre, mais cela gèle tout le jeu. quelqu'un peut-il me laisser des connaissances? Merci!
3 Réponses :
Je vous suggère d'utiliser le module threading et de lancer deux fonctions.
À la fin, vous pouvez formater comme tel:
import time max_time = #the time you want start_time = time.time() while (time.time() - start_time) < max_time: game()
Une autre option est la module timeit . Vous pouvez définir une minuterie et vérifier quand un certain temps est atteint avec une instruction if / while.
Une troisième option est avec le module de temps que vous avez utilisé pour dormir:
from threading import Thread if __name__ == '__main__': Thread(target = game()).start() Thread(target = timer()).start()
from threading import Timer def timeout(): # do your stuff here t = Timer(number_of_seconds, timeout) t.start()
import sys import time import os counter=0 s = 0 m = 0 n = int(input("Till How Many Seconds do you want the timer to be?: ")) print("") while counter <= n: sys.stdout.write("\x1b[1A\x1b[2k") print(m, 'Minutes', s, 'Seconds') time.sleep(1) s += 1 counter+=1 if s == 60: m += 1 s = 0 print("\nTime Is Over Sir! Timer Complete!\n") beepPath = ("C:\\Users\\Farzeen Zargar\\Desktop\\Fizz Folder\\Videos\\Youtube Video Edits") songs = os.listdir(beepPath) os.startfile(os.path.join(beepPath, songs[13]))
Salut @LumberFizz, bienvenue sur stackoverflow! Vous répondez à une question datant de plus d'un an. Veuillez essayer de répondre à de nouvelles questions, c'est plus utile. Et ne vous contentez pas d'ajouter un bloc de code. Expliquez votre réponse pour que le créateur puisse apprendre de vous.