瀏覽代碼

Steuerung implementiert. Überarbeitung zur direkten Eingabe benötigt. Des weiteren können die Koordinaten des Spielers noch negativ werden. Behebung erforderlich.

ateubert 7 年之前
父節點
當前提交
45b0c4e352
共有 1 個文件被更改,包括 72 次插入7 次删除
  1. 72 7
      Player.py

+ 72 - 7
Player.py

@@ -3,12 +3,77 @@ import time as t
3 3
 import sys
4 4
 import os
5 5
 
6
-Data = open("Testlab.txt","r")
6
+global xPlayerVal
7
+global yPlayerVal
8
+xyPlayer= [0,0]                     # festlegen der Startposition des Spielers
9
+xSense = 0
10
+ySense = 0
7 11
 
8
-n = 0
9
-line = 0
12
+def re():
13
+    Data = open("Testlab.txt","r")      #festlegen des Dateipfades
14
+    global Mat                          #Mat ist die Matrix, die koordinatenbezogen Informationen ueber das Lab vereint
15
+    Mat = []
16
+    for line in Data:                   #Auslesen des Labs und ueberfuehren in eine Matrix
17
+        li = line.strip().split(" ")
18
+        Mat.append(li)
19
+    Data.close()
10 20
 
11
-for line in Data:
12
-    li = line.rstrip().split("")
13
-    print li
14
-    t.sleep(1)
21
+
22
+def sense(xSense,ySense):              #Spieler "tastet" nach begehbaren Feldern
23
+    feldwert = Mat[xSense][ySense]
24
+    print "Feldwert = {}".format(feldwert)
25
+
26
+    if feldwert == "1":
27
+        xyPlayer[0] = xSense
28
+        xyPlayer[1] = ySense
29
+        print "Neue Koordinaten: x-Koordinate: {0}; y-Koordinate: {1}".format(xyPlayer[0],xyPlayer[1])
30
+
31
+    elif feldwert == "0":
32
+        print "Bonk!"
33
+
34
+    elif feldwert == "S":
35
+        xyPlayer[0] = xSense
36
+        xyPlayer[1] = ySense
37
+        print "Sie sind wieder am Start!{0}Neue Koordinaten: x-Koordinate: {1}; y-Koordinate: {2}".format("\n",xyPlayer[0],xyPlayer[1])
38
+
39
+    elif feldwert == "Z":
40
+        xyPlayer[0] = xSense
41
+        xyPlayer[1] = ySense
42
+        print "Sie sind am Ziel angekommen!{0}Neue Koordinaten: x-Koordinate: {1}; y-Koordinate: {2}".format("\n",xyPlayer[0],xyPlayer[1])
43
+
44
+    else:
45
+        print "fehler"
46
+
47
+def schritt(dir,val):
48
+    if dir == "xPlayer":
49
+        xSense = int(xyPlayer[0]) + val
50
+        ySense = int(xyPlayer[1])
51
+        print "xSense = {}".format(xSense)
52
+        print "ySense = {}".format(ySense)
53
+
54
+    elif dir == "yPlayer":
55
+        xSense = int(xyPlayer[0])
56
+        ySense = int(xyPlayer[1]) + val
57
+        print "xSense = {}".format(xSense)
58
+        print "ySense = {}".format(ySense)
59
+
60
+    sense(xSense,ySense)
61
+
62
+def movement():
63
+    move = input("Geben Sie eine Bewegungrichtung an! (WASD)")
64
+
65
+    if move == "W":
66
+        schritt("xPlayer",-1)
67
+
68
+    elif move == "S":
69
+        schritt("xPlayer",1)
70
+
71
+    elif move == "A":
72
+        schritt("yPlayer",-1)
73
+
74
+    elif move == "D":
75
+        schritt("yPlayer",1)
76
+
77
+re()
78
+while True:
79
+    movement()