python2 pygame Fehler

Hier werden alle anderen GUI-Toolkits sowie Spezial-Toolkits wie Spiele-Engines behandelt.
Antworten
The Hit-Man
User
Beiträge: 435
Registriert: Montag 20. Februar 2006, 18:11
Wohnort: Menden / Sauerland
Kontaktdaten:

ich bin mir nicht ganz sicher, wie ich den fehler beschreiben soll. ich vermute es liegt an dem sound, in meiner sprite klasse. und zwar bekomme ich hin und wieder, man kann es nicht genau fest machen, diese fehlermeldung:


Fatal Python error: ceval: tstate mix-up
Abgebrochen (Speicherabzug geschrieben)
[u0@LenovoW520 v16]$

ich vermute, es liegt da dran, das ich bei einem mouse-click eine .wav datei abspiele. ich kann den fehler nur schwer eingrenzen, da er wie gesagt hin und wieder, einfach so auf tritt.
nehme ich das

self.sound.play ()

raus, scheint es keine fehler mehr zu geben.
kann da jemand helfen?

Code: Alles auswählen

#
# Sprites fuer die einzelnen bloecke mit mouse-click-sound
#
class SpriteField (pygame.sprite.Sprite):
    def __init__(self, x, y, color, index):
        pygame.sprite.Sprite.__init__(self)

        self.color = color
        self.x = x
        self.y = y
        self.image = 0
        self.sound =  pygame.mixer.Sound ('res/audio/sfx/click_1.wav')

        self.loadImages ()

        self.index = index
        self.rect = self.image.get_rect()
        self.rect.x = x
        self.rect.y = y



    def loadImages (self):
        if self.color == 1:
            self.image = pygame.image.load ('res/images/rot.png')
        if self.color == 2:
            self.image = pygame.image.load ('res/images/lila.png')
        if self.color == 3:
            self.image = pygame.image.load ('res/images/gelb.png')
        if self.color == 4:
            self.image = pygame.image.load ('res/images/dummy.png')

        self.image = pygame.transform.scale (self.image, (ZOOM, ZOOM))

    def check_click(self, mouse):
        if self.rect.collidepoint(mouse):
            playitingreen.calcField (self.index, playfield)
            self.sound.play ()

__deets__
User
Beiträge: 14529
Registriert: Mittwoch 14. Oktober 2015, 14:29

Das klingt dramatisch kaputt. Und ist etwas, das durch reinen Python-Code normalerweise nicht passieren sollte. Ich kann nur empfehlen, Python und pygame neu zu installieren, und zu schauen, ob das Problem dann weiter besteht.
Benutzeravatar
ThomasL
User
Beiträge: 1366
Registriert: Montag 14. Mai 2018, 14:44
Wohnort: Kreis Unna NRW

Code: Alles auswählen

playitingreen.calcField (self.index, playfield)
Was ist denn "playitingreen" und "playfield", wo kommen denn diese Variablen her?
Ich bin Pazifist und greife niemanden an, auch nicht mit Worten.
Für alle meine Code Beispiele gilt: "There is always a better way."
https://projecteuler.net/profile/Brotherluii.png
Antworten