diff --git a/src/audio/Eagle.mp3 b/src/audio/Eagle.mp3 index 70a748e..6ebe9eb 100644 Binary files a/src/audio/Eagle.mp3 and b/src/audio/Eagle.mp3 differ diff --git a/src/audio/Elephant.mp3 b/src/audio/Elephant.mp3 index 6b3eb19..d000bf5 100644 Binary files a/src/audio/Elephant.mp3 and b/src/audio/Elephant.mp3 differ diff --git a/src/audio/Fox..mp3 b/src/audio/Fox..mp3 deleted file mode 100644 index 82e54d8..0000000 Binary files a/src/audio/Fox..mp3 and /dev/null differ diff --git a/src/audio/Leopard.mp3 b/src/audio/Leopard.mp3 index cb4328f..9bac5c2 100644 Binary files a/src/audio/Leopard.mp3 and b/src/audio/Leopard.mp3 differ diff --git a/src/audio/Lion.mp3 b/src/audio/Lion.mp3 index a1b1d72..46fc609 100644 Binary files a/src/audio/Lion.mp3 and b/src/audio/Lion.mp3 differ diff --git a/src/audio/Mouse.mp3 b/src/audio/Mouse.mp3 index 314f6ea..ed6bb6e 100644 Binary files a/src/audio/Mouse.mp3 and b/src/audio/Mouse.mp3 differ diff --git a/src/audio/Wolf.mp3 b/src/audio/Wolf.mp3 index 546bb1f..c48aa5a 100644 Binary files a/src/audio/Wolf.mp3 and b/src/audio/Wolf.mp3 differ diff --git a/src/main.py b/src/main.py index 15d6873..d18f193 100644 --- a/src/main.py +++ b/src/main.py @@ -25,7 +25,7 @@ Mouse = pygame.mixer.Sound('audio/Mouse.mp3') #Start = pygame.mixer.Sound('audio/start.mp3') Tiger = pygame.mixer.Sound('audio/Tiger.mp3') Wolf = pygame.mixer.Sound('audio/Wolf.mp3') -Fox = pygame.mixer.Sound('audio/Fox..mp3') +Fox = pygame.mixer.Sound('audio/Fox.mp3') Eagle = pygame.mixer.Sound('audio/Eagle.mp3') pygame.mixer.music.set_volume(0.5) #################################################### @@ -142,7 +142,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): if id == 1: if MAP[x][y] == 16: return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP[x][y] == 14 or MAP1[x][y] == 15 or MAP[x][y] == 8): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP[x][y] == 14 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or MAP[x][y] == 8): if MAP[x][y] == 14 and MAP1[old_x][old_y] == 20: return 0 if MAP[x][y] == 14 and MAP1[old_x][old_y] != 20: @@ -157,8 +157,10 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): ID[MAP[x][y]] = 0 r_animals -= 1 return 1 + if MAP1[x][y] == 15 and not (8 <= MAP[x][y] <= 14): + return 0 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP[x][y] == 14 or MAP1[x][y] == 15 or MAP[x][y] == 8): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP[x][y] == 14 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or MAP[x][y] == 8): if MAP[x][y] == 14 and MAP1[old_x][old_y] == 20: return 0 if MAP[x][y] == 14 and MAP1[old_x][old_y] != 20: @@ -179,7 +181,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): elif id == 2: if MAP[x][y] == 16 and MAP[x][y] != 0 and MAP[x][y] != 15 and MAP[x][y] != 17 and MAP[x][y] != 18 and MAP1[x][y] != 15 and (9 < MAP[x][y] <= 14): return 0 - if x == old_x and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8<=MAP[x][y]<=9): + if x == old_x and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or 8<=MAP[x][y]<=9): if y > old_y: for i in range(old_y+1,y): if (MAP[x][i] != 0 and MAP[x][i] != 20 and MAP[x][i] != 15 and MAP[x][i] != 16 and MAP[x][i] != 18): @@ -220,7 +222,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): r_animals -= 1 return 1 return 1 - elif y == old_y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8<=MAP[x][y]<=9): + elif y == old_y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or 8<=MAP[x][y]<=9): if x > old_x: for i in range(old_x+1,x): if (MAP[i][y] != 0 and MAP[i][y] != 20 and MAP[i][y] != 15 and MAP[i][y] != 16 and MAP[i][y] != 18): @@ -264,7 +266,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): else : return 0 elif id == 3: - if abs(x - old_x) <= 1 and abs(y - old_y) <= 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8<=MAP[x][y]<=10): + if abs(x - old_x) <= 1 and abs(y - old_y) <= 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or 8<=MAP[x][y]<=10): if 8 <= MAP[x][y] <= 10: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -287,7 +289,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): return 0 if(MAP[x][y] == 20): return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8<=MAP[x][y]<=11): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or 8<=MAP[x][y]<=11): if 8 <= MAP[x][y] <= 11: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -304,7 +306,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): r_animals -= 1 return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8<=MAP[x][y]<=11): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or 8<=MAP[x][y]<=11): if 8 <= MAP[x][y] <= 11: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -328,7 +330,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): return 0 if(MAP[x][y] == 20): return 0 - if abs(x - old_x) ==1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8<=MAP[x][y]<=12): + if abs(x - old_x) ==1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or 8<=MAP[x][y]<=12): if 8 <= MAP[x][y] <= 12: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -345,7 +347,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): r_animals -= 1 return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8<=MAP[x][y]<=12): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or 8<=MAP[x][y]<=12): if 8 <= MAP[x][y] <= 12 : if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -369,7 +371,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): return 0 if MAP[x][y] == 20: return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8<=MAP[x][y]<=13): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or 8<=MAP[x][y]<=13): if 8 <= MAP[x][y] <= 13: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -386,7 +388,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): r_animals -= 1 return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8<=MAP[x][y]<=13): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or 8<=MAP[x][y]<=13): if 8 <= MAP[x][y] <= 13: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -403,7 +405,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): r_animals -= 1 return 1 return 1 - elif old_x == x and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8<=MAP[x][y]<=13): + elif old_x == x and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or 8<=MAP[x][y]<=13): if y > old_y: for i in range(old_y+1,y): if MAP[x][i] != 20 and MAP[x][i] != 1 : @@ -444,7 +446,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): r_animals -= 1 return 1 return 1 - elif old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8<=MAP[x][y]<=13): + elif old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or 8<=MAP[x][y]<=13): if x > old_x: for i in range(old_x+1,x): if MAP[i][y] != 20 and MAP[i][y] != 1 : @@ -492,7 +494,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): return 0 if(MAP[x][y] == 20): return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 9<=MAP[x][y]<=14): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or 9<=MAP[x][y]<=14): if 9 <= MAP[x][y] <= 14: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -509,7 +511,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): r_animals -= 1 return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 and MAP[x][y] == 18 or MAP1[x][y] == 15 or 9<=MAP[x][y]<=14): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 and MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or 9<=MAP[x][y]<=14): if 9 <= MAP[x][y] <= 14: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -531,7 +533,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): elif id == 8: if MAP[x][y] == 18: return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP[x][y] == 7 or MAP1[x][y] == 17 or MAP[x][y] == 1): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP[x][y] == 7 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or MAP[x][y] == 1): if MAP[x][y] == 7: if MAP1[old_x][old_y] != 20: ID[7] = 0 @@ -548,7 +550,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): l_animals -= 1 return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP[x][y] == 7 or MAP1[x][y] == 17 or MAP[x][y] == 1): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP[x][y] == 7 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or MAP[x][y] == 1): if MAP[x][y] == 7: if MAP1[old_x][old_y] != 20: ID[7] = 0 @@ -570,7 +572,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): elif id == 9: if MAP[x][y] == 18 and MAP[x][y] != 0 and MAP[x][y] != 15 and MAP[x][y] != 17 and MAP[x][y] != 16 and MAP1[x][y] != 17 and (2 old_y: for i in range(old_y + 1, y): if (MAP[x][i] != 0 and MAP[x][i] != 20 and MAP[x][i] != 17 and MAP[x][i] != 18): @@ -611,7 +613,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): l_animals -= 1 return 1 return 1 - elif y == old_y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=2): + elif y == old_y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=2): if x > old_x: for i in range(old_x + 1, x): if (MAP[i][y] != 0 and MAP[i][y] != 20 and MAP[i][y] != 17 and MAP[i][y] != 18): @@ -655,7 +657,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): else: return 0 elif id == 10: - if abs(x - old_x) <= 1 and abs(y - old_y) <= 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=3): + if abs(x - old_x) <= 1 and abs(y - old_y) <= 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=3): if 1 <= MAP[x][y] <= 3: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -678,7 +680,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): return 0 if(MAP[x][y] == 20): return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=4): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=4): if 1 <= MAP[x][y] <= 4: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -695,7 +697,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): l_animals -= 1 return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=4): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=4): if 1 <= MAP[x][y] <= 4: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -719,7 +721,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): return 0 if(MAP[x][y] == 20): return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=5): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=5): if 1 <= MAP[x][y] <= 5: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -736,7 +738,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): l_animals -= 1 return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=5): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=5): if 1 <= MAP[x][y] <= 5: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -760,7 +762,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): return 0 if MAP[x][y] == 20: return 0 - if abs(x - old_x) ==1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=6): + if abs(x - old_x) ==1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=6): if 1 <= MAP[x][y] <= 6: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -777,7 +779,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): l_animals -= 1 return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=6): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=6): if 1 <= MAP[x][y] <= 6: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -794,7 +796,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): l_animals -= 1 return 1 return 1 - elif old_x == x and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=6): + elif old_x == x and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=6): if y > old_y: for i in range(old_y+1,y): if MAP[x][i] != 20 and MAP[x][i] != 8 : @@ -835,7 +837,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): l_animals -= 1 return 1 return 1 - elif old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=6): + elif old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=6): if x > old_x: for i in range(old_x+1,x): if MAP[i][y] != 20 and MAP[i][y] != 1 : @@ -883,7 +885,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): return 0 if(MAP[x][y] == 20): return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 2<=MAP[x][y]<=7): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 2<=MAP[x][y]<=7): if 2 <= MAP[x][y] <= 7: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -900,7 +902,7 @@ def ismove(old_x,old_y,x,y,id,MAP,MAP1): l_animals -= 1 return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 2<=MAP[x][y]<=7): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 2<=MAP[x][y]<=7): if 2 <= MAP[x][y] <= 7: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -955,7 +957,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): if id == 8: if MAP[x][y] == 18: return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP[x][y] == 7 or MAP1[x][y] == 17 or MAP[x][y] == 1): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP[x][y] == 7 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or MAP[x][y] == 1): if MAP[x][y] == 7: if MAP1[old_x][old_y] != 20: return 1 @@ -966,7 +968,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 17 and 1<=MAP[x][y]<=7: return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP[x][y] == 7 or MAP1[x][y] == 17 or MAP[x][y] == 1): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP[x][y] == 7 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or MAP[x][y] == 1): if MAP[x][y] == 7: if MAP1[old_x][old_y] != 20: return 1 @@ -982,7 +984,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): elif id == 9: if MAP[x][y] == 18 and MAP[x][y] != 0 and MAP[x][y] != 15 and MAP[x][y] != 17 and MAP[x][y] != 16 and MAP1[x][y] != 17 and (2 old_y: for i in range(old_y + 1, y): if (MAP[x][i] != 0 and MAP[x][i] != 20 and MAP[x][i] != 17 and MAP[x][i] != 18): @@ -1011,7 +1013,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 17 and 1<=MAP[x][y]<=7: return 1 return 1 - elif y == old_y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=2): + elif y == old_y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=2): if x > old_x: for i in range(old_x + 1, x): if (MAP[i][y] != 0 and MAP[i][y] != 20 and MAP[i][y] != 17 and MAP[i][y] != 18): @@ -1043,7 +1045,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): else: return 0 elif id == 10: - if abs(x - old_x) <= 1 and abs(y - old_y) <= 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=3): + if abs(x - old_x) <= 1 and abs(y - old_y) <= 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=3): if 1 <= MAP[x][y] <= 3: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -1060,7 +1062,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): return 0 if(MAP[x][y] == 20): return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=4): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=4): if 1 <= MAP[x][y] <= 4: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -1071,7 +1073,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 17 and 1<=MAP[x][y]<=7: return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=4): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=4): if 1 <= MAP[x][y] <= 4: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -1089,7 +1091,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): return 0 if(MAP[x][y] == 20): return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=5): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=5): if 1 <= MAP[x][y] <= 5: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -1100,7 +1102,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 17 and 1<=MAP[x][y]<=7: return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=5): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=5): if 1 <= MAP[x][y] <= 5: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -1118,7 +1120,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): return 0 if MAP[x][y] == 20: return 0 - if abs(x - old_x) ==1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=6): + if abs(x - old_x) ==1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=6): if 1 <= MAP[x][y] <= 6: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -1129,7 +1131,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 17 and 1<=MAP[x][y]<=7: return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=6): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=6): if 1 <= MAP[x][y] <= 6: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -1140,7 +1142,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 17 and 1<=MAP[x][y]<=7: return 1 return 1 - elif old_x == x and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=6): + elif old_x == x and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=6): if y > old_y: for i in range(old_y+1,y): if MAP[x][i] != 20 and MAP[x][i] != 8 : @@ -1169,7 +1171,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 17 and 1<=MAP[x][y]<=7: return 1 return 1 - elif old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 1<=MAP[x][y]<=6): + elif old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 1<=MAP[x][y]<=6): if x > old_x: for i in range(old_x+1,x): if MAP[i][y] != 20 and MAP[i][y] != 1 : @@ -1205,7 +1207,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): return 0 if(MAP[x][y] == 20): return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 2<=MAP[x][y]<=7): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 2<=MAP[x][y]<=7): if 2 <= MAP[x][y] <= 7: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -1216,7 +1218,7 @@ def left_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 17 and 1<=MAP[x][y]<=7: return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or MAP1[x][y] == 17 or 2<=MAP[x][y]<=7): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 17 or MAP[x][y] == 15 or MAP[x][y] == 16 or (MAP1[x][y] == 17 and 1<=MAP[x][y]<=7) or 2<=MAP[x][y]<=7): if 2 <= MAP[x][y] <= 7: if MAP[x][y] == 1: if MAP1[x][y] != 20: @@ -1272,7 +1274,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP[x][y] == 16: return 0 if abs(x - old_x) == 1 and old_y == y and ( - MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP[x][y] == 14 or MAP1[x][y] == 15 or MAP[x][y] == 8): + MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP[x][y] == 14 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14) or MAP[x][y] == 8): if MAP[x][y] == 14 and MAP1[old_x][old_y] == 20: return 0 if MAP[x][y] == 14 and MAP1[old_x][old_y] != 20: @@ -1283,7 +1285,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): return 1 return 1 elif old_x == x and abs(y - old_y) == 1 and ( - MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP[x][y] == 14 or MAP1[x][y] == 15 or MAP[x][y] == 8): + MAP[x][y] == 0 or MAP[x][y] == 20 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP[x][y] == 14 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or MAP[x][y] == 8): if MAP[x][y] == 14 and MAP1[old_x][old_y] == 20: return 0 if MAP[x][y] == 14 and MAP1[old_x][old_y] != 20: @@ -1299,7 +1301,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP[x][y] == 16 and MAP[x][y] != 0 and MAP[x][y] != 15 and MAP[x][y] != 17 and MAP[x][y] != 18 and MAP1[x][y] != 15 and (9 < MAP[x][y] <= 14): return 0 if x == old_x and ( - MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8 <=MAP[x][y] <= 9): + MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or 8 <=MAP[x][y] <= 9): if y > old_y: for i in range(old_y + 1, y): if (MAP[x][i] != 0 and MAP[x][i] != 20 and MAP[x][i] != 15 and MAP[x][i] != 16 and MAP[x][i] != 18): @@ -1329,7 +1331,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): return 1 return 1 elif y == old_y and ( - MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8 <=MAP[x][y] <= 9): + MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or 8 <=MAP[x][y] <= 9): if x > old_x: for i in range(old_x + 1, x): if (MAP[i][y] != 0 and MAP[i][y] != 20 and MAP[i][y] != 15 and MAP[i][y] != 16 and MAP[i][y] != 18): @@ -1361,7 +1363,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): else: return 0 elif id == 3: - if abs(x - old_x) <= 1 and abs(y - old_y) <= 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8 <=MAP[x][y] <= 10): + if abs(x - old_x) <= 1 and abs(y - old_y) <= 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or 8 <=MAP[x][y] <= 10): if 8 <= MAP[x][y] <= 10: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -1378,7 +1380,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): return 0 if (MAP[x][y] == 20): return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8 <=MAP[x][y] <= 11): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or 8 <=MAP[x][y] <= 11): if 8 <= MAP[x][y] <= 11: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -1389,7 +1391,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 15 and 8 <= MAP[x][y] <= 14: return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8 <=MAP[x][y] <= 11): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or 8 <=MAP[x][y] <= 11): if 8 <= MAP[x][y] <= 11: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -1407,7 +1409,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): return 0 if (MAP[x][y] == 20): return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8 <=MAP[x][y] <= 12): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or 8 <=MAP[x][y] <= 12): if 8 <= MAP[x][y] <= 12: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -1418,7 +1420,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 15 and 8 <= MAP[x][y] <= 14: return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8 <=MAP[x][y] <= 12): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or 8 <=MAP[x][y] <= 12): if 8 <= MAP[x][y] <= 12: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -1436,7 +1438,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): return 0 if MAP[x][y] == 20: return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8 <=MAP[x][y] <= 13): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or 8 <=MAP[x][y] <= 13): if 8 <= MAP[x][y] <= 13: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -1447,7 +1449,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 15 and 8 <= MAP[x][y] <= 14: return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8 <=MAP[x][y] <= 13): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or 8 <=MAP[x][y] <= 13): if 8 <= MAP[x][y] <= 13: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -1458,7 +1460,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 15 and 8 <= MAP[x][y] <= 14: return 1 return 1 - elif old_x == x and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8 <=MAP[x][y] <= 13): + elif old_x == x and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or 8 <=MAP[x][y] <= 13): if y > old_y: for i in range(old_y + 1, y): if MAP[x][i] != 20 and MAP[x][i] != 1: @@ -1487,7 +1489,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 15 and 8 <= MAP[x][y] <= 14: return 1 return 1 - elif old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 8 <=MAP[x][y] <= 13): + elif old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or 8 <=MAP[x][y] <= 13): if x > old_x: for i in range(old_x + 1, x): if MAP[i][y] != 20 and MAP[i][y] != 1: @@ -1523,7 +1525,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): return 0 if (MAP[x][y] == 20): return 0 - if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or MAP1[x][y] == 15 or 9 <=MAP[x][y] <= 14): + if abs(x - old_x) == 1 and old_y == y and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 or MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or 9 <=MAP[x][y] <= 14): if 9 <= MAP[x][y] <= 14: if MAP[x][y] == 8: if MAP1[x][y] != 20: @@ -1534,7 +1536,7 @@ def right_move(old_x,old_y,x,y,id,MAP,MAP1): if MAP1[x][y] == 15 and 8 <= MAP[x][y] <= 14: return 1 return 1 - elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 and MAP[x][y] == 18 or MAP1[x][y] == 15 or 9 <=MAP[x][y] <= 14): + elif old_x == x and abs(y - old_y) == 1 and (MAP[x][y] == 0 or MAP[x][y] == 15 or MAP[x][y] == 17 and MAP[x][y] == 18 or (MAP1[x][y] == 15 and 8<=MAP[x][y]<=14)or 9 <=MAP[x][y] <= 14): if 9 <= MAP[x][y] <= 14: if MAP[x][y] == 8: if MAP1[x][y] != 20: