Browse Source

Fixing other back-end bugs

Kirk Trombley 5 years ago
parent
commit
31f2e5b340
2 changed files with 6 additions and 5 deletions
  1. 4 3
      server/game_api.py
  2. 2 2
      server/lib.py

+ 4 - 3
server/game_api.py

@@ -89,9 +89,10 @@ def make_guess(game_id, round_num):
             "distance": None,
         }), 201
 
-    lat = request.json.get("lat", None)
-    lng = request.json.get("lng", None)
-    if not isinstance(lat, float) or not isinstance(lng, float):
+    try:
+        lat = float(request.json.get("lat", None))
+        lng = float(request.json.get("lng", None))
+    except ValueError:
         abort(400)
 
     target = require_game(game_id).coord_set.get_coord(round_num)

+ 2 - 2
server/lib.py

@@ -50,10 +50,10 @@ def score(target, guess):
     """
     dist_km = haversine.haversine(target, guess)
     if dist_km <= min_dist_km:
-        return perfect_score
+        return perfect_score, dist_km
 
     if dist_km >= max_dist_km:
-        return 0
+        return 0, dist_km
 
     # TODO probably still needs tweaking
     return int(perfect_score * (1 - (dist_km / max_dist_km) ** 2)), dist_km