This commit is contained in:
2023-07-09 19:20:01 +02:00
parent e1827ac7c6
commit c6bf93adc0

View File

@ -1,9 +1,8 @@
# TO DO: Benachritigung bei komplettem Schiff-Abschuss?
# TO DO: Schräge Feldbelegung verbieten?
import random, time
matrixgr = 7
matrixgr = 7 # Größe des Spielfeldes (7x7)
def makeFeld ():
feld = [[[0] for i in range(matrixgr)] for e in range(matrixgr)] # Erzeugt ein mit Nullen befülltes Feld, was bedeutet, dass dort weder ein (zerstörtes) Schiff ist, noch ein fehlgeschlagener Angriff stattgefunden hat
@ -13,17 +12,14 @@ def makeFeld ():
def printFelder():
# Von Feld1 werden nur die abgeschossenen Felder gezeigt, von Feld2 alle.
output = [[gegnerFeld [matrixgr]],[' ' + eigenFeld [matrixgr]]]
output = [[gegnerFeld [matrixgr]],[' ' + eigenFeld [matrixgr]]] # In die Liste Output werden die auszugebenden Elemente eingetragen, damit sie am Ende alle gleichzeitig nebeneinander ausgegeben werden können
for i in output:
i+= [" 1 2 3 4 5 6 7 "]
if len (gegnerFeld) != len(eigenFeld):
return ("Error: Listen nicht gleich lang!!")
felder = [gegnerFeld, eigenFeld]
for f in range (2):
NZeile = 'A'
for f in range (2): # f als erstes 0, dann 1
NZeile = 'A' # Bezeichner für die Zeile
for i in felder[f]:
zeile = ''
for n in i:
@ -75,7 +71,7 @@ def summeFeld (spielerFeld):
return summe
def zweicheck (spielerFeld): #Super dumm, kann optimiert werden
def zweicheck (spielerFeld):
for i in spielerFeld:
for e in i:
for n in e:
@ -224,7 +220,7 @@ def feldWahl (spielerFeld):
print ("["+chr(feld[0]+65)+str(feld[1]+1)+"]","Leider kein Treffer! Der Bot zieht nun...")
def Initialisiere ():
def Initialisiere (): # Erstellt die beiden Felder
global gegnerFeld, eigenFeld
gegnerFeld= makeFeld ()
fuellFeld (gegnerFeld)
@ -233,7 +229,6 @@ def Initialisiere ():
fuellFeld (gegnerFeld)
gegnerFeld += ['Gegnerisches Feld:']
print ("Das gegnerische Feld wurde generiert!")
akzeptiert = False
eing = ''
while eing != ('J' or 'j'):
eigenFeld = makeFeld ()