Problem mit Image unter Pygame

Hier werden alle anderen GUI-Toolkits sowie Spezial-Toolkits wie Spiele-Engines behandelt.
BlackJack

Sie werden *lokal* in der Funktion definiert und einige *Objekte*, nicht *Namen*, werden zurückgegeben. Mit diesen Objekten wird auf Modulebene beim Aufruf der Funktion aber nichts gemacht, die werden also einfach verworfen.
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

Also muss ich sie als global vereinbaren, oder?
BlackJack

Musst Du nicht und solltest Du auch nicht. Globale Namen machen Programme schnell unübersichtlich. Der sauberere Weg ist es die zurückgegebenen Objekte an Namen zu binden.
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

ich habs jetzt so umgeändert, aber das eigentliche Problem löst das nicht:

Code: Alles auswählen

import pygame
import os, sys
from pygame.locals import*
pygame.init()
Soeldner = pygame.image.load('Söldner.jpg')
Spos = Soeldner.get_rect()
Kunst = pygame.image.load('Kunst.jpg')
Kpos = Kunst.get_rect()
Deckung = pygame.image.load('Deckung.jpg')
Dpos = Deckung.get_rect()
Lifeball = pygame.image.load('Lifeball.jpg')
Lpos = Lifeball.get_rect()
def getgraphik():
        Soeldner = 4
        Deckung = 3
        Kunst = 2
        Lifeball = 1
        level = [4321]
        return [level]

    

black = 0, 0, 0
size = width, height = 800, 400
screen = pygame.display.set_mode(size)
while True:
    for event in pygame.event.get():
        if event.type == KEYDOWN:
            if event.key == K_UP:
                x = 1
                while x == 1:
                    Spos = Spos.move (0, -2)
                    if event.type == KEYUP and event.key == K_UP:
                        x = 0
screen.fill(black)
getgraphik()
screen.blit (Soeldner, Spos, Deckung, Dpos, Kunst, Kpos, Lifeball, Lpos, level)
pygame.display.flip()
BlackJack

Preisfrage:

Code: Alles auswählen

while True:
    print '...'
print 'Hallo'
Warum wird nie Hallo ausgegeben?
Imperator
User
Beiträge: 275
Registriert: Montag 20. August 2007, 14:43
Kontaktdaten:

Wenn du mir jetzt noch sagen kannst, wie man Pygame.Surface macht, dürfte es endlich laufen ... hoffe ich. :(
Antworten