Ich bin noch neu in Python und habe mit Pygame gestartet. Ich mache ein endloses Läuferspiel, aber ich habe ein Problem mit meinem Laufzyklus. Hier ist mein Code:Basic Running Cycle Nicht funktioniert
import pygame
import sys
from pygame.locals import *
pygame.init()
clock = pygame.time.Clock()
clock2 = pygame.time.get_ticks()
screen = pygame.display.set_mode((640, 575))
bgx = 0
bgx2 = -800
scroll = 10
pose = 1
background = pygame.image.load("images/background2.png").convert_alpha();
player = pygame.image.load("images/character1.png").convert_alpha();
screen.blit(background, (0, 0))
def draw_screen(x):
screen.blit(background, (x, 0))
def draw_screen2(x2):
screen.blit(background, (x2, 0))
def draw_player(pose):
if pose == 1:
player = pygame.image.load("images/character1.png").convert_alpha();
screen.blit(player, (0, 0))
elif pose == 2:
player = pygame.image.load("images/character2.png").convert_alpha();
screen.blit(player, (0, 0))
elif pose == 3:
player = pygame.image.load("images/character3.png").convert_alpha();
screen.blit(player, (0, 0))
elif pose == 4:
player = pygame.image.load("images/character2.png").convert_alpha();
screen.blit(player, (0, 0))
def set_poses(pose):
if pose == 1:
pose = 2
if pose == 2:
pose = 3
if pose == 3:
pose = 4
if pose == 4:
pose = 1
while True: #Loop
clock2 = pygame.time.get_ticks()
#Quitting Function
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
quit()
clock.tick(50)
#Screen Scrolling
if bgx != 800:
bgx += scroll
else:
bgx = 0
if bgx2 != 0:
bgx2 += scroll
else:
bgx2 = -800
#Drawing Items
draw_screen2(bgx2)
draw_screen(bgx)
draw_player(pose)
if clock2%6 == 0:
set_poses(pose)
pygame.display.update()
So wird der Bildschirm scrollen, und mein Charakter erscheint, aber er bleibt in seiner ersten Position (Frame, denke ich.) An der Stelle, wo es set_poses(pose)
läuft Ich habe versucht, die es auch etwas drucken direkt vor Einstellung der Pose, die es getan hat, aber es stellt nicht die Pose ein. Ich habe versucht, die Pose zu drucken, und es hat sich gezeigt, dass sich die Posen nicht geändert haben. Also, ja, ich habe mein Problem gefunden, aber ich kann nicht für das Leben von mir eine Lösung finden.
Btw. lerne mehr über [MCVE], _nicht das Setzen der Pose_ kann ohne Pygame und all deine Code Logik reproduziert werden. –