Vì vậy, tôi có một vấn đề, tôi không hoàn toàn hiểu sự kiện đó là cần thiết để được trao cho một lệnh hẹn giờ anyway, nó không nói bất cứ nơi nào trực tuyến, đến nơi tôi tìm kiếm giờ. Vì vậy, tôi chỉ sử dụng những gì hầu hết mọi người dường như đang sử dụng 'USEREVENT + 1'. Tôi không chắc nếu nó là chính xác, nhưng bộ đếm thời gian của tôi không hoạt động. Tôi có sử dụng nó đúng không? Đây là mã của tôi:pygame.time.set_timer nhầm lẫn?
nyansecond=462346
nyanint=0
spin=0
aftin=452345
def nyanmusic(nyansecond,nyanint,spin):
if nyanint == 0:
nyansound.play()
nyanint= 1
elif nyanint == 1:
nyansecond = pygame.time.set_timer(USEREVENT+1,7000)
if nyansecond < 200 and spin == 1:
spin = 0
nyansecond = pygame.time.set_timer(USEREVENT+1,7000)
elif nyansecond > 6500 and nyansecond < 100000 and spin == 0:
spin = 1
nyansoundm.play()
return nyansecond,nyanint,spin
Tôi sau đó xóa mã của tôi trên trang thứ hai mà tôi đã triển khai (hoạt động tốt). Nó chạy nyansound, nhưng không chạy nyansoundm sau 6,5 giây (6500 mili giây). Tôi đang làm chương trình này để giúp tôi tìm hiểu những điều cơ bản của python và pygame, trước khi chuyển sang những thứ phức tạp hơn. Tôi cũng có thể sử dụng nó khi tôi muốn nghe nyan mèo hoặc các bài hát looped khác mà không cần phải đi trên youtube và lãng phí băng thông quý giá. Đừng lo lắng về điều đó, mặc dù.
Oh, và đây là đoạn code tôi đã đưa vào vòng lặp của tôi, mặc dù tôi không nghĩ rằng vấn đề này quá nhiều:
#music
nyansecond,nyanint,spin = nyanmusic(nyansecond,nyanint,spin)
Cảm ơn! Điều này làm việc hoàn toàn. Tôi hiểu sai bộ đếm thời gian hoàn toàn: D. Xin lỗi, tôi không sử dụng sự kiện D :. Thật không may, tôi đã đạt được một vấn đề mới. Vòng lặp của tôi đôi khi, kể từ khi tôi đang trên một máy tính khá chậm, không chạy 'pygame.event.get (PLAYSOUNDEVENT)' cùng một lúc như bộ đếm thời gian chạy ra ngoài và gây ra sự kiện xảy ra. Có cách nào để sửa lỗi này, hay đây là một vấn đề nan giải? – Bluetiger6001
Được rồi, tôi đưa ra câu trả lời, tôi sẽ upvote nó, nhưng tôi vừa tham gia trang web và không có đủ danh tiếng. Khi tôi nhận được đủ, tôi sẽ thách thức upvote bạn trả lời. Cảm ơn :) – Bluetiger6001
Upvoted :) Cảm ơn câu trả lời tuyệt vời – Bluetiger6001