Создание системы зуммера с использованием Python - PullRequest
0 голосов
/ 18 ноября 2018

У нас праздничная вечеринка на работе, и мы пытаемся настроить игру Family Feud. С этим я пытаюсь запрограммировать систему зуммера. Я очень плохо знаком с Pygame, поэтому, возможно, есть лучший подход к тому, что я пытаюсь сделать.

Я написал следующий код, который работает в некоторой степени. Прямо сейчас он распознает кнопку и отображает картинку, как следует; тем не менее, он распознает все нажатия кнопок там, где я хочу, чтобы он распознал только первое до тех пор, пока он не будет сброшен. Например, сначала жужжит левая сторона, я хочу, чтобы их изображение отображалось - затем, если после жужжит правая команда, я хочу, чтобы эта кнопка была проигнорирована. Затем, если нажата третья (кнопка сброса), она возвращается к началу, чтобы начать отслеживание для первой нажатой кнопки. Любая помощь будет принята с благодарностью!

import pygame
import pdcurses
#import RPi.GPIO as GPIO
import image
import time
import clock
from pygame import mixer
from pygame.locals import *

displayWidth = 1600
displayHeight = 1200

pygame.init()
#mixer.init()
#pygame.display.init()
screen = pygame.display.set_mode((displayWidth, displayHeight))
pygame.display.set_caption('Family Feud')
pygame.display.update()

def reset():
    global screen
    kids = pygame.image.load("kids.jpg")
    screen.blit(kids, (0,0))
    pygame.display.update()


gameExit = False
while not gameExit:

for event in pygame.event.get():
    if event.type == KEYDOWN:
        if event.key == K_LEFT:
            leftBuzzer = pygame.image.load("ice cream.jpg")
            screen.blit(leftBuzzer,(0,0))
            pygame.display.update()


        if event.key == K_RIGHT:
            rightBuzzer = pygame.image.load("snowman.jpg")
            screen.blit(rightBuzzer,(0,0))
            pygame.display.update()


        if event.key == K_q:
            pygame.quit()


        if event.key == K_r:
            reset()

1 Ответ

0 голосов
/ 18 ноября 2018

Вы можете добавить логическое значение alreadyPressed, и для каждого нажатия зуммера перед проверкой чего-либо нужно проверить alreadyPressed оператора if.

...