Pygame'de resim gözükmeme sorunu

merhaba programı çalıştırdığım zaman resmi göremiyorum…

import sys
import pygame
import os
pygame.init()

width = 800
height = 600

boyut = (width, height)

pencere = pygame.display.set_mode(boyut)

game_folder = os.path.dirname(__file__)
img_folder = os.path.join(game_folder, "img/ms2")
clock = pygame.time.Clock()

pygame.mouse.set_visible(0)

all_sprites = pygame.sprite.Group()

class Parca (pygame.sprite.Sprite):
    def __init__(self,x = width / 2, y = height / 2):
        super().__init__()
        self.image = pygame.image.load(os.path.join(img_folder, "ms2.jpg")).convert()

        self.image.set_colorkey((0, 0, 0))
        self.rect = self.image.get_rect()
        #self.rect.center = (x, y)
    def update(self, *args):
        up, down, right, left = args
        if self.rect.x > width:
            self.rect.x = 0
        if self.rect.x < 0:
            self.rect.x = width
        if self.rect.y > height:
            self.rect.y = 0
        if self.rect.y < 0:
            self.rect.y = height
        if right:
            self.rect.x += 10
        if left:
            self.rect.x -= 10
        if up:
            self.rect.y -= 10
        if down:
            self.rect.y += 10

parca1 = Parca()
all_sprites.add = (parca1)
while True:
    clock.tick(60)

    keys = pygame.key.get_pressed()

    for event in pygame.event.get():
        if event.type == pygame.QUIT: sys.exit()
    all_sprites.update()
    if keys[pygame.K_w] or keys[pygame.K_s] or keys[pygame.K_a] or keys[pygame.K_d]:
        up, down, right, left = keys[pygame.K_w], keys[pygame.K_s], keys[pygame.K_d], keys[pygame.K_a]
        all_sprites.update(up, down, right, left)


    pencere.fill((255,255,255))
    all_sprites.draw(pencere)
    pygame.display.update()

@Emerald_Gamer kanka pc de değilim, buraya Bi yardım etsene

1 Beğeni

Kodlarınızı üç çentik arasına alırsanız, kodlarınıza kod görünümü kazandırabilirsiniz.

```
Kodlar bu araya yazılacak.
```

Sorun resim değil kordinatlar sen 2 ye tam bölünmeyen bir sayıyı ikiye bölüp float sonuç almışsın ve o sonucu da Rect nesnesi içinde kullanmaya çalışmışsın ama Rect nesnesi float değer kabul etmez

1 Beğeni

Eğer kalansiz bölmek istersen / yerine // kullan

1 Beğeni

Teşekkür ederim ama hala resmi göremiyorum rect hatası gitti.

1 Beğeni

cevabınız basit all_sprites grubuna sprite eklemeye çalışırken niteliğini değiştirmişsiniz
all_sprites.add = (parca1) yerine all_sprites.add(parca1) yapın bu yüzden Parca sınıfının update metodu çalışmıyor
ama update metodundaki kodda da sıkınıt var siz:
up, down, right, left = args gibi bir şeyi args boş iken yaparsanız hata alırsınız ve siz ilk başta boş update çağırıyorsunuz sonra dolu dediklerimi yaparsanız sorun çözülür diye düşünüyorum

1 Beğeni

@Emerald_Gamer eyvallah kanka güzel adamsın

3 Beğeni

:smile: sende reis

2 Beğeni