09.09.
|
After Width: | Height: | Size: 1.9 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 1.6 KiB |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 860 B |
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 8.5 KiB |
|
After Width: | Height: | Size: 731 B |
@@ -2,10 +2,11 @@
|
|||||||
## Spiel Informatik 2026 Johannes Matzen Eb
|
## Spiel Informatik 2026 Johannes Matzen Eb
|
||||||
|
|
||||||
### Spielidee
|
### Spielidee
|
||||||
|
kommt noch...
|
||||||
|
|
||||||
### Protokoll
|
### Protokoll
|
||||||
#### 09.09.
|
#### 09.09.
|
||||||
test
|
Ich habe programmiert, dass man die Spielfigur in dem Raster bewegen kann und, dass sich das Raster dabei verschiebt. Letzteres funktioniert aber noch nicht so gut.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,61 @@
|
|||||||
|
import copy
|
||||||
|
import pygame
|
||||||
|
import random
|
||||||
|
|
||||||
|
class MeinSpiel:
|
||||||
|
bilder = ["Bilder/1.jpg", "Bilder/1.jpg", "Bilder/2.jpg", "Bilder/3.jpg", "Bilder/4.jpg", "Bilder/5.jpg", "Bilder/Hase.jpg"]
|
||||||
|
spielfeld = []
|
||||||
|
|
||||||
|
def __init__(self, felderX, felderY):
|
||||||
|
for x in range(felderX):
|
||||||
|
self.spielfeld.append([])
|
||||||
|
for y in range(felderY):
|
||||||
|
self.spielfeld[x].append(random.randint(0,5))
|
||||||
|
|
||||||
|
def anfangsKonfiguration(self):
|
||||||
|
self.spielerx = random.randint(5,9)
|
||||||
|
self.spielery = random.randint(5,9)
|
||||||
|
self.spielfeld[self.spielerx][self.spielery] = 6
|
||||||
|
|
||||||
|
def rechts(self):
|
||||||
|
self.spielerx += 1
|
||||||
|
def links(self):
|
||||||
|
self.spielerx -= 1
|
||||||
|
def oben(self):
|
||||||
|
self.spielery -= 1
|
||||||
|
def unten(self):
|
||||||
|
self.spielery += 1
|
||||||
|
|
||||||
|
def bewegen(self,taste):
|
||||||
|
verschiebung = [0,0]
|
||||||
|
self.spielfeld[self.spielerx][self.spielery] = 0
|
||||||
|
if taste == 1:
|
||||||
|
self.rechts()
|
||||||
|
if taste == 2:
|
||||||
|
self.links()
|
||||||
|
if taste == 3:
|
||||||
|
self.unten()
|
||||||
|
if taste == 4:
|
||||||
|
self.oben()
|
||||||
|
|
||||||
|
verschiebung = self.hinergrundverschieben()
|
||||||
|
|
||||||
|
|
||||||
|
self.spielfeld[self.spielerx][self.spielery] = 6
|
||||||
|
return verschiebung
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def hinergrundverschieben(self):
|
||||||
|
xverschiebung=0
|
||||||
|
yverschiebung=0
|
||||||
|
if self.spielerx >= 13:
|
||||||
|
xverschiebung = -1
|
||||||
|
if self.spielerx <= 1:
|
||||||
|
xverschiebung = 1
|
||||||
|
if self.spielery >= 13:
|
||||||
|
yverschiebung = -1
|
||||||
|
if self.spielery <= 1:
|
||||||
|
yverschiebung = 1
|
||||||
|
verschiebung=[xverschiebung,yverschiebung]
|
||||||
|
return verschiebung
|
||||||
@@ -0,0 +1,54 @@
|
|||||||
|
# Importieren u. initialisieren der Pygame-Bibliothek
|
||||||
|
from meinspiel import MeinSpiel
|
||||||
|
import pygame
|
||||||
|
from pygame.locals import *
|
||||||
|
pygame.init()
|
||||||
|
|
||||||
|
|
||||||
|
# Variablen/KONSTANTEN setzen
|
||||||
|
Breite, Hoehe = 840, 840
|
||||||
|
Pixel = 60
|
||||||
|
FelderX, FelderY = 42, 42
|
||||||
|
FPS = 60
|
||||||
|
SCHWARZ = ( 0, 0, 0)
|
||||||
|
WEISS = ( 255, 255, 255)
|
||||||
|
pyGameBilder = []
|
||||||
|
xverschiebung = 0
|
||||||
|
yverschiebung = 0
|
||||||
|
|
||||||
|
# Bilder aus meinSpiel werden für pygame vorbereitet
|
||||||
|
meinSpiel = MeinSpiel(FelderX, FelderY)
|
||||||
|
for fname in meinSpiel.bilder:
|
||||||
|
pyGameBilder.append(pygame.image.load(fname))
|
||||||
|
|
||||||
|
#Anfangskonfiguration für das Spielfeld wird geladen
|
||||||
|
meinSpiel.anfangsKonfiguration()
|
||||||
|
|
||||||
|
# Definieren und Öffnen eines neuen Fensters
|
||||||
|
fenster = pygame.display.set_mode((Breite, Hoehe))
|
||||||
|
pygame.display.set_caption("Mein erstes Spiel")
|
||||||
|
clock = pygame.time.Clock()
|
||||||
|
|
||||||
|
# Schleife Hauptprogramm
|
||||||
|
while True:
|
||||||
|
verschiebung = [0,0]
|
||||||
|
# Überprüfen, ob Nutzer eine Aktion durchgeführt hat
|
||||||
|
for event in pygame.event.get():
|
||||||
|
# Beenden bei [ESC] oder [X]
|
||||||
|
if event.type==QUIT or (event.type==KEYDOWN and event.key==K_ESCAPE):
|
||||||
|
pygame.quit()
|
||||||
|
if event.type==KEYDOWN:
|
||||||
|
verschiebung = meinSpiel.bewegen(event.key-1073741902)
|
||||||
|
|
||||||
|
# Spielfeld löschen
|
||||||
|
xverschiebung += verschiebung[0]
|
||||||
|
yverschiebung += verschiebung[1]
|
||||||
|
for x in range(FelderX):
|
||||||
|
for y in range(FelderY):
|
||||||
|
fenster.blit(pyGameBilder[meinSpiel.spielfeld[x][y]],((x+xverschiebung)*Pixel,(y+yverschiebung)*Pixel))
|
||||||
|
|
||||||
|
# Spielfeld/figuren zeichnen
|
||||||
|
|
||||||
|
# Fenster aktualisieren
|
||||||
|
pygame.display.flip()
|
||||||
|
clock.tick(FPS)
|
||||||