fixed wrong initial orientation

This commit is contained in:
tubks 2021-04-14 01:54:52 +02:00
parent 5d83e51c73
commit 99ca90e29a

View File

@ -21,7 +21,6 @@ class Player(Creature):
self.direction = 0 self.direction = 0
self.queue=[] self.queue=[]
self.goalchest=False self.goalchest=False
self.step_counter=0
def rotate(self, clockwise=True): def rotate(self, clockwise=True):
if clockwise: if clockwise:
@ -273,11 +272,11 @@ class Player(Creature):
self.queue.append("op") self.queue.append("op")
def step(self): def step(self):
self.step_counter+=1
if self.health > 0: if self.health > 0:
# self.moveFwd() # self.moveFwd()
# self.rotate(False) # self.rotate(False)
print("position: ", self.pos) print("position: ", self.pos)
#print("direction: ", self.direction)
if not self.goalchest: #jeśli nie ma wyznaczonej skrzynki do której idzie to robi bfs żeby ją wyznaczyć if not self.goalchest: #jeśli nie ma wyznaczonej skrzynki do której idzie to robi bfs żeby ją wyznaczyć
self.path=self.findShortestPathToTarget() self.path=self.findShortestPathToTarget()
print("the player should follow this path:", self.path) print("the player should follow this path:", self.path)
@ -285,6 +284,7 @@ class Player(Creature):
#actionPlanner ma się wykonać i-1 razy, bo dla ostatniego pola już nie #actionPlanner ma się wykonać i-1 razy, bo dla ostatniego pola już nie
self.actionPlanner(self.path[i], self.path[i+1]) #dla każdego pola dodaje do kolejki kilka akcji potrzebnych żeby do niego dojść self.actionPlanner(self.path[i], self.path[i+1]) #dla każdego pola dodaje do kolejki kilka akcji potrzebnych żeby do niego dojść
print(self.queue) print(self.queue)
self.direction=0 # bo po obrotach w wyznaczaniu ścieżki trzeba wrócić do orientacji takiej, jaka była na starcie wyznaczania
while len(self.queue)!=0: while len(self.queue)!=0:
self.action=self.queue.pop(0) self.action=self.queue.pop(0)
if self.action=="tr": if self.action=="tr":
@ -306,7 +306,7 @@ class Player(Creature):
opponent = cellmates[0] opponent = cellmates[0]
print("Fighting") print("Fighting")
self.fightOrFlight(opponent) self.fightOrFlight(opponent)
print("HP: " + str(self.health) + " / " + str(self.maxHealth)) # print("HP: " + str(self.health) + " / " + str(self.maxHealth))
print("Gold: " + str(self.gold)) print("Gold: " + str(self.gold))
else: else:
print("HP: 0 / " + str(self.maxHealth)) print("HP: 0 / " + str(self.maxHealth))