Maus auf Bild Zentrieren
- __blackjack__
- User
- Beiträge: 13174
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@Giben: Du hast da zwei verschachtelte Ereignisschleifen. Das sollte nur eine sein.
“There will always be things we wish to say in our programs that in all known languages can only be said poorly.” — Alan J. Perlis
Ich kapiers einfach nicht
Wie bekomme ich jetzt das Sprite dazu um es mit der maus zu bewegen??
Wie bekomme ich jetzt das Sprite dazu um es mit der maus zu bewegen??
Code: Alles auswählen
import pygame
from pygame.locals import *
#from pygame_functions import *
BREITE = 800
HOEHE = 600
WEIS =(255,255,255)
FPS = 60
pygame.display.set_caption("Varroa Invaders")
clock = pygame.time.Clock()
fenster = pygame.display.set_mode([BREITE,HOEHE])
hintergrund = pygame.image.load("bilder/wiese.jpg")
class Player (pygame.sprite.Sprite):
def __init__(self):
super().__init__()
self.image = pygame.image.load('Bilder/Daco50x49.png')
self.rect = self.image.get_rect()
self.rect.center = (0,0)
def update(self):
event = pygame.event.get()
if event.type == pygame.MOUSEMOTION:
self.rect.top +=1
def main():
spielaktiv = True
spieler = Player()
spritesall = pygame.sprite.Group(spieler)
pygame.init()
while spielaktiv:
for event in pygame.event.get():
if event.type==QUIT or (event.type==KEYDOWN and event.key==K_ESCAPE):
spielaktiv = False
fenster.blit(hintergrund,(0,0))
spritesall.update()
spritesall.draw(fenster)
pygame.display.update()
pygame.display.flip()
clock.tick(FPS)
pygame.quit()
if __name__ == "__main__":
main()
- __blackjack__
- User
- Beiträge: 13174
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@Giben: Das Problem ist nicht das ``for`` sondern das da überhaupt `pygame.event.get()` aufgerufen wird. Das hat in einem `Sprite` nix zu suchen, das gehört ins Hauptprogramm.
`event.type` führt ja auch zu einem `AttributeError` weil das gar kein einzelnes Ereignis ist.
`event.type` führt ja auch zu einem `AttributeError` weil das gar kein einzelnes Ereignis ist.
“There will always be things we wish to say in our programs that in all known languages can only be said poorly.” — Alan J. Perlis
Erstmal danke für deine Geduld
Also soweit bin ich auch gekommen.Aber wie bekomme ich jetzt die Mausteuerung hin?Wie schaffe ich es die Mauskoordinaten zur def update(sel)f zu übertragen?
Die koordinaten werden mir mit Print angezeigt, scheint also soweit zu funktionieren...
Also soweit bin ich auch gekommen.Aber wie bekomme ich jetzt die Mausteuerung hin?Wie schaffe ich es die Mauskoordinaten zur def update(sel)f zu übertragen?
Die koordinaten werden mir mit Print angezeigt, scheint also soweit zu funktionieren...
Code: Alles auswählen
def update(self):
self.rect.center
def main():
spielaktiv = True
spieler = Player()
spritesall = pygame.sprite.Group(spieler)
pygame.init()
while spielaktiv:
for event in pygame.event.get():
if event.type==QUIT or (event.type==KEYDOWN and event.key==K_ESCAPE):
spielaktiv = False
if event.type == pygame.MOUSEMOTION:
bewegung = event.pos
print (bewegung)
spieler.update()
fenster.blit(hintergrund,(0,0))
#spritesall.update()
spritesall.draw(fenster)
pygame.display.update()