Ich ein Spiel in dem man Schafe abschießen muss programiert.
Ich hab ein Schaf, dass sich mit rect.move bewegt, ein Fadenkreuz, das auf der Maus-Position liegt.
Mir fehlt aber das wichtigste nähmlich die Schuss-Funktion.
Ich krieg es einfach diese 3 Dinge in eine schleife einzubauen:
Wenn Schaf_pos = Mauszeigerposition und Mausklick, dann Schaf stoppen und Bild mit sheep_rt_dh.bmp ersetzten.
Code: Alles auswählen
import pygame
from pygame.locals import *
import pygame, sys
pygame.init()
window = pygame.display.set_mode((800, 600))
pygame.display.set_caption ("Schaf-Grippe")
screen = pygame.display.get_surface()
pygame.mouse.set_visible(0)
#Hintergrund
bg = pygame.image.load("gras.bmp")
#Schaf-Bilder mit colorkeys:
#rechts
sheep_rt = pygame.image.load("sheep_rt.bmp")
sheep_rtrect = sheep_rt.get_rect()
#rechts-tod
sheep_rt_dh = pygame.image.load("sheep_rt_dh.bmp")
sheep_rt_dhrect = sheep_rt_dh.get_rect()
#fadenkreuz
aimpoint = pygame.image.load("ap.bmp")
aimpointrect = aimpoint.get_rect()
sheep_rt.set_colorkey((0, 255, 0), RLEACCEL)
sheep_rt_dh.set_colorkey((0, 225, 0), RLEACCEL)
aimpoint.set_colorkey((0, 255, 0), RLEACCEL)
clock = pygame.time.Clock()
keepGoing = True
while keepGoing:
#Time
clock.tick(30)
#Bewegungen
speed0 = [0, 0]
speed = [6, 0]
sheep_rtrect = sheep_rtrect.move(speed)
sheep_rt_dhrect =sheep_rt_dhrect.move(speed0)
for event in pygame.event.get():
mouseX, mouseY = pygame.mouse.get_pos ()
mpos = pygame.mouse.get_pos()
pos = (mouseX -60, mouseY -60)
screen.blit(bg, (0, 0))
screen.blit(sheep_rt, sheep_rtrect)
screen.blit(sheep_rt_dh, sheep_rt_dhrect)
screen.blit(aimpoint, (pos))
pygame.display.flip()
Daher:
Danke im Vorraus an jeden der mir hilft oder es versucht...