From d86c05fbe0245b85522c82eb3a1783680e6867c0 Mon Sep 17 00:00:00 2001 From: Administrator Date: Sun, 28 Aug 2022 16:42:40 +0300 Subject: [PATCH] fields --- battleship/views.py | 19 +++++++++++++++++++ battleship_back/urls.py | 1 + 2 files changed, 20 insertions(+) diff --git a/battleship/views.py b/battleship/views.py index 1babb96..158b9d4 100644 --- a/battleship/views.py +++ b/battleship/views.py @@ -133,6 +133,25 @@ def check_status(request): }) +@csrf_exempt +def get_fields(request): + if request.method == 'OPTIONS': + return JsonResponse({}) + data = json.loads(request.body.decode('utf-8')) + game_id = data['game_id'] + token = data['token'] + player = Player.objects.get(game_id=game_id, token=token) + my_field = list(player.field) + player2 = Player.objects.get(game_id=game_id, number=(1 - player.number)) + another_field = list(player2.field.replace('o', ' ')) + return JsonResponse({ + 'my_field': [my_field[x * 10: (x + 1) * 10] for x in range(0, 10)], + 'opponent_field': [another_field[x * 10: (x + 1) * 10] for x in range(0, 10)], + 'my_turn': player.game.turn == player.number, + 'game_finished': 'o' not in player.field or 'o' not in player2.field + }) + + @csrf_exempt def check_field_correct(request): if request.method == 'OPTIONS': diff --git a/battleship_back/urls.py b/battleship_back/urls.py index 1dbf070..76c1e2a 100644 --- a/battleship_back/urls.py +++ b/battleship_back/urls.py @@ -27,4 +27,5 @@ urlpatterns = [ path('api/place_ships', views.place_ships), path('api/shoot', views.shoot), path('api/check_field_correct', views.check_field_correct), + path('api/get_fields', views.get_fields) ]