Я просто создавал игру Snake на pygame и пытался получить ввод от некоторых клавиш, чтобы преобразовать его в перемещение персонажа моего игрока. Это не сработало. Это работало раньше, когда я делал другую игру, используя код, упомянутый здесь. (Используя метод 2)
Сейчас у меня это не работает.
Я использую VS Code в Windows 11, если эта информация поможет.
Моя версия Python — 3.12.3
Я ожидал, что код будет работать нормально , конечно, но никаких ошибок не показывалось, и PyGame определенно обнаруживал мои ключи, но движения игрока не происходило. Пожалуйста помоги. Спасибо за ответ.
Мой код:-
import pygame
from sys import exit
from random import randint
# boilerplate
pygame.init()
screen = pygame.display.set_mode((800,800))
pygame.display.set_caption('Sneky-Snek')
clock = pygame.time.Clock()
game_active = False
ph = 0
isMoving = False
#all graphics
font = pygame.font.SysFont("Comic_Sans_MS", 30)
snektext = font.render('Sneky-Snek',True,(255,255,255))
snekk = font.render('A simple Snake(esqe) Game',False,(255,255,255))
snekk_rect = snekk.get_rect(center = (400,250))
snektext_2x = pygame.transform.scale2x(snektext)
snektext_rect_2x = snektext_2x.get_rect(center = (400,200))
menutext = font.render('Press SPACE to Start',False,(255,255,255))
menutext_rect = menutext.get_rect(center = (400,650))
# boilerplate
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
exit()
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_SPACE and game_active == False:
game_active = True
if event.key == pygame.K_RIGHT and isMoving == False:
isMoving = True
print('hi!')
if event.type == pygame.KEYUP:
if event.key == pygame.K_RIGHT and isMoving:
isMoving = False
print('bye!')
# display updates
if game_active:
screen.fill('Black')
snek = pygame.draw.rect(screen,(0,255,0),pygame.Rect(30,30,20,20))
if isMoving==True:
snek.x += 10
#x = randint(0,800)
#y = randint(0,800)
#pygame.draw.rect(screen, (255,0,0), pygame.Rect(x, y, 20, 20))
else:
screen.blit(snektext_2x,snektext_rect_2x)
screen.blit(menutext,menutext_rect)
screen.blit(snekk,snekk_rect)
pygame.display.update()
clock.tick(60)
Подробнее здесь: https://stackoverflow.com/questions/785 ... t-detected
Игрок не движется в PyGame, даже если обнаружен ввод с клавиатуры [дубликат] ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Игрок не движется в PyGame, даже если обнаружен ввод с клавиатуры [дубликат]
Anonymous » » в форуме Python - 0 Ответы
- 30 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Мой игрок все еще находится в режиме скалолазания, когда игрок бежит с лестницы
Anonymous » » в форуме C# - 0 Ответы
- 6 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как я могу исправить эту проблему, когда игрок движется не в правильном направлении?
Anonymous » » в форуме C# - 0 Ответы
- 12 Просмотры
-
Последнее сообщение Anonymous
-