30.09.
This commit is contained in:
+57
-32
@@ -10,10 +10,16 @@ class MeinSpiel:
|
||||
ebene0bilder = []
|
||||
for i in range(6):
|
||||
ebene0bilder.append("Bilder/"+hintergrundstil+str(i+1)+".xcf")
|
||||
ebene0feld = []
|
||||
ebene1bilder = ["Bilder/leer.xcf","Bilder/Spieler.xcf","Bilder/Monster.xcf",]
|
||||
ebene1feld = []
|
||||
ebene0feld = []
|
||||
ebene1bilder = ["Bilder/leer.xcf","Bilder/angriff1.xcf"]
|
||||
ebene1feld = []
|
||||
ebene2bilder = ["Bilder/leer.xcf","Bilder/Spieler.xcf","Bilder/Monster.xcf"]
|
||||
ebene2feld = []
|
||||
game_over = False
|
||||
anzahlMonster= 0
|
||||
monsterspawncooldown=0
|
||||
monsterstruktur = []
|
||||
betrachtetesmonster = 0
|
||||
|
||||
def __init__(self, felderX, felderY):
|
||||
for x in range(felderX):
|
||||
@@ -21,6 +27,11 @@ class MeinSpiel:
|
||||
for y in range(felderY):
|
||||
self.ebene0feld[x].append(random.randint(0,5))
|
||||
|
||||
for x in range(felderX):
|
||||
self.ebene2feld.append([])
|
||||
for y in range(felderY):
|
||||
self.ebene2feld[x].append(0)
|
||||
|
||||
for x in range(felderX):
|
||||
self.ebene1feld.append([])
|
||||
for y in range(felderY):
|
||||
@@ -29,26 +40,39 @@ class MeinSpiel:
|
||||
def anfangsKonfiguration(self):
|
||||
self.spielerx = random.randint(5,9)
|
||||
self.spielery = random.randint(5,9)
|
||||
self.ebene1feld[self.spielerx][self.spielery] = 1
|
||||
self.monsterx = random.randint(5,9)
|
||||
self.monstery = random.randint(5,9)
|
||||
self.ebene1feld[self.monsterx][self.monstery] = 2
|
||||
self.ebene2feld[self.spielerx][self.spielery] = 1
|
||||
self.ebene1feld[4][4] = 1
|
||||
|
||||
def Monster(self):
|
||||
if self.monsterspawncooldown == 0:
|
||||
self.anzahlMonster += 1
|
||||
self.monsterstruktur.append([random.randint(1,42),random.randint(1,42),random.randint(1,42),random.randint(1,42)])
|
||||
self.monsterspawncooldown = 600
|
||||
self.betrachtetesmonster = 0
|
||||
while self.betrachtetesmonster < self.anzahlMonster:
|
||||
self.monsterstruktur [self.betrachtetesmonster][2] = self.monsterstruktur [self.betrachtetesmonster][0]
|
||||
self.monsterstruktur [self.betrachtetesmonster][3] = self.monsterstruktur [self.betrachtetesmonster][1]
|
||||
self.monsterstruktur [self.betrachtetesmonster][0],self.monsterstruktur [self.betrachtetesmonster][1] = monster.bewegen(monster,self.monsterstruktur [self.betrachtetesmonster][0],self.monsterstruktur [self.betrachtetesmonster][1])
|
||||
if self.ebene0feld[self.monsterstruktur [self.betrachtetesmonster][0]][self.monsterstruktur [self.betrachtetesmonster][1]] == 5:
|
||||
self.ebene2feld[self.monsterstruktur [self.betrachtetesmonster][1]][self.monsterstruktur [self.betrachtetesmonster][2]] = 0
|
||||
self.monsterstruktur [self.betrachtetesmonster][0] = self.monsterstruktur [self.betrachtetesmonster][2]
|
||||
self.monsterstruktur [self.betrachtetesmonster][1] = self.monsterstruktur [self.betrachtetesmonster][3]
|
||||
else:
|
||||
self.ebene2feld[self.monsterstruktur [self.betrachtetesmonster][2]][self.monsterstruktur [self.betrachtetesmonster][3]] = 0
|
||||
print(self.betrachtetesmonster)
|
||||
self.ebene2feld[self.monsterstruktur [self.betrachtetesmonster][0]][self.monsterstruktur [self.betrachtetesmonster][3]] = 2
|
||||
self.betrachtetesmonster +=1
|
||||
self.monsterspawncooldown -=1
|
||||
|
||||
|
||||
|
||||
def spawnSpieler(self):
|
||||
self.altmonsterx = self.monsterx
|
||||
self.altmonstery = self.monstery
|
||||
self.monsterx,self.monstery = monster.bewegen(monster,self.monsterx,self.monstery)
|
||||
if self.ebene0feld[self.monsterx][self.monstery] == 5:
|
||||
self.ebene1feld[self.altmonsterx][self.altmonstery] = 2
|
||||
self.ebene1feld[self.monsterx][self.monstery] = 0
|
||||
self.monsterx = self.altmonsterx
|
||||
self.monstery = self.altmonstery
|
||||
|
||||
|
||||
if self.spielerx == self.monsterx and self.spielery == self.monstery:
|
||||
self.game_over = True
|
||||
def Angriffe(self):
|
||||
betrachtetesMonster = 0
|
||||
while betrachtetesMonster < self.anzahlMonster:
|
||||
if self.spielerx == self.monsterstruktur [betrachtetesMonster][0] and self.spielery == self.monsterstruktur [betrachtetesMonster][1]:
|
||||
self.game_over = True
|
||||
betrachtetesMonster +=1
|
||||
|
||||
def rechts(self):
|
||||
self.spielerx += 1
|
||||
@@ -77,11 +101,11 @@ class MeinSpiel:
|
||||
self.oben()
|
||||
sound.Schrittsound(sound)
|
||||
if self.ebene0feld[self.spielerx][self.spielery]== 5:
|
||||
self.ebene1feld[self.spielerx][self.spielery] = 0
|
||||
self.ebene2feld[self.spielerx][self.spielery] = 0
|
||||
self.spielerx,self.spielery = self.altspielerx,self.altspielery
|
||||
verschiebung = self.hinergrundverschieben(xverschiebungaktuell,yverschiebungaktuell)
|
||||
self.ebene1feld[self.altspielerx][self.altspielery] = 0
|
||||
self.ebene1feld[self.spielerx][self.spielery] = 1
|
||||
self.ebene2feld[self.altspielerx][self.altspielery] = 0
|
||||
self.ebene2feld[self.spielerx][self.spielery] = 1
|
||||
return verschiebung
|
||||
|
||||
|
||||
@@ -124,16 +148,17 @@ class sound:
|
||||
class monster:
|
||||
cooldownx = 1
|
||||
cooldowny = 1
|
||||
|
||||
|
||||
def __init__(self):
|
||||
pass
|
||||
def bewegen(self,xpos,ypos):
|
||||
def bewegen(self,posx,posy):
|
||||
xrichtung = random.randint(1,50*(self.cooldownx))
|
||||
if xrichtung == 1 and xpos < 41:
|
||||
xpos += 1
|
||||
if xrichtung == 1 and posx < 41:
|
||||
posx += 1
|
||||
self.cooldownx = 100
|
||||
if xrichtung == 2 and xpos > 0:
|
||||
xpos -= 1
|
||||
if xrichtung == 2 and posx > 0:
|
||||
posx -= 1
|
||||
self.cooldownx = 100
|
||||
|
||||
if self.cooldownx != 1:
|
||||
@@ -141,16 +166,16 @@ class monster:
|
||||
|
||||
|
||||
yrichtung = random.randint(1,50*(self.cooldowny))
|
||||
if yrichtung == 1 and xpos < 41:
|
||||
ypos += 1
|
||||
if yrichtung == 1 and posy < 41:
|
||||
posy += 1
|
||||
self.cooldowny = 100
|
||||
if yrichtung == 2 and ypos > 0:
|
||||
ypos -= 1
|
||||
if yrichtung == 2 and posy > 0:
|
||||
posy -= 1
|
||||
self.cooldowny = 100
|
||||
|
||||
if self.cooldowny != 1:
|
||||
self.cooldowny -= 1
|
||||
|
||||
|
||||
return xpos,ypos
|
||||
return posx,posy
|
||||
|
||||
|
||||
Reference in New Issue
Block a user