Skip to content

Commit 616f30b

Browse files
committed
update decimal speed fallbacks
1 parent 0252be7 commit 616f30b

6 files changed

+73
-81
lines changed

api_v2/models/speed.py

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -23,25 +23,25 @@ class HasSpeed(models.Model):
2323

2424
def get_fly(self):
2525
if self.fly is None:
26-
return 0.0
26+
return 0
2727
return self.fly
2828

2929
def get_burrow(self):
3030
if self.burrow is None:
31-
return 0.0
31+
return 0
3232
return self.burrow
3333

3434
def get_climb(self):
3535
if self.climb is None:
36-
return self.walk / 2 # Climb speed is half of walk speed.
36+
return self.walk // 2 # Climb speed is half of walk speed (integer division)
3737
return self.climb
3838

3939
def get_crawl(self):
40-
return self.walk / 2
40+
return self.walk // 2 # Integer division
4141

4242
def get_swim(self):
4343
if self.swim is None:
44-
return self.walk / 2 # Swim speed is half of walk speed.
44+
return self.walk // 2 # Swim speed is half of walk speed (integer division)
4545
return self.swim
4646

4747
def get_unit(self):
@@ -85,17 +85,13 @@ def get_speed(self):
8585
fields={
8686
# todo: model typed as any
8787
"unit": serializers.StringRelatedField(),
88-
# todo: model typed as any
89-
"walk": serializers.StringRelatedField(),
90-
# todo: model typed as any
91-
"crawl": serializers.StringRelatedField(),
88+
"walk": serializers.IntegerField(),
89+
"crawl": serializers.IntegerField(),
9290
"hover": serializers.BooleanField(),
93-
"fly": serializers.FloatField(),
94-
"burrow": serializers.FloatField(),
95-
# todo: model typed as any
96-
"climb": serializers.StringRelatedField(),
97-
# todo: model typed as any
98-
"swim": serializers.StringRelatedField(),
91+
"fly": serializers.IntegerField(allow_null=True),
92+
"burrow": serializers.IntegerField(allow_null=True),
93+
"climb": serializers.IntegerField(allow_null=True),
94+
"swim": serializers.IntegerField(allow_null=True),
9995
}
10096
))
10197
def get_speed_all(self):

api_v2/serializers/creature.py

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -390,17 +390,13 @@ def get_speed(self, creature):
390390
fields={
391391
# todo: model typed as any
392392
"unit": serializers.StringRelatedField(),
393-
# todo: model typed as any
394-
"walk": serializers.StringRelatedField(),
395-
# todo: model typed as any
396-
"crawl": serializers.StringRelatedField(),
393+
"walk": serializers.IntegerField(),
394+
"crawl": serializers.IntegerField(),
397395
"hover": serializers.BooleanField(),
398396
"fly": serializers.IntegerField(allow_null=True),
399397
"burrow": serializers.IntegerField(allow_null=True),
400-
# todo: model typed as any
401-
"climb": serializers.StringRelatedField(),
402-
# todo: model typed as any
403-
"swim": serializers.StringRelatedField(),
398+
"climb": serializers.IntegerField(allow_null=True),
399+
"swim": serializers.IntegerField(allow_null=True),
404400
}
405401
))
406402
def get_speed_all(self, creature):

api_v2/tests/responses/TestObjects.test_creature_ancient_example.approved.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -311,12 +311,12 @@
311311
"walk": 40
312312
},
313313
"speed_all": {
314-
"burrow": 0.0,
314+
"burrow": 0,
315315
"climb": 40,
316-
"crawl": 20.0,
316+
"crawl": 20,
317317
"fly": 80,
318318
"hover": false,
319-
"swim": 20.0,
319+
"swim": 20,
320320
"unit": "feet",
321321
"walk": 40
322322
},

api_v2/tests/responses/TestObjects.test_creature_goblin_example.approved.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -255,12 +255,12 @@
255255
"walk": 30
256256
},
257257
"speed_all": {
258-
"burrow": 0.0,
259-
"climb": 15.0,
260-
"crawl": 15.0,
261-
"fly": 0.0,
258+
"burrow": 0,
259+
"climb": 15,
260+
"crawl": 15,
261+
"fly": 0,
262262
"hover": false,
263-
"swim": 15.0,
263+
"swim": 15,
264264
"unit": "feet",
265265
"walk": 30
266266
},

api_v2/tests/responses/TestObjects.test_creature_guard_example.approved.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -208,12 +208,12 @@
208208
"walk": 30
209209
},
210210
"speed_all": {
211-
"burrow": 0.0,
212-
"climb": 15.0,
213-
"crawl": 15.0,
214-
"fly": 0.0,
211+
"burrow": 0,
212+
"climb": 15,
213+
"crawl": 15,
214+
"fly": 0,
215215
"hover": false,
216-
"swim": 15.0,
216+
"swim": 15,
217217
"unit": "feet",
218218
"walk": 30
219219
},

api_v2/tests/responses/TestObjects.test_creatureset_example.approved.json

Lines changed: 45 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -182,12 +182,12 @@
182182
"walk": 50
183183
},
184184
"speed_all": {
185-
"burrow": 0.0,
186-
"climb": 25.0,
187-
"crawl": 25.0,
188-
"fly": 0.0,
185+
"burrow": 0,
186+
"climb": 25,
187+
"crawl": 25,
188+
"fly": 0,
189189
"hover": false,
190-
"swim": 25.0,
190+
"swim": 25,
191191
"unit": "feet",
192192
"walk": 50
193193
},
@@ -339,12 +339,12 @@
339339
"walk": 0
340340
},
341341
"speed_all": {
342-
"burrow": 0.0,
343-
"climb": 0.0,
344-
"crawl": 0.0,
345-
"fly": 0.0,
342+
"burrow": 0,
343+
"climb": 0,
344+
"crawl": 0,
345+
"fly": 0,
346346
"hover": false,
347-
"swim": 0.0,
347+
"swim": 0,
348348
"unit": "feet",
349349
"walk": 0
350350
},
@@ -536,12 +536,12 @@
536536
"walk": 40
537537
},
538538
"speed_all": {
539-
"burrow": 0.0,
540-
"climb": 20.0,
541-
"crawl": 20.0,
542-
"fly": 0.0,
539+
"burrow": 0,
540+
"climb": 20,
541+
"crawl": 20,
542+
"fly": 0,
543543
"hover": false,
544-
"swim": 20.0,
544+
"swim": 20,
545545
"unit": "feet",
546546
"walk": 40
547547
},
@@ -776,12 +776,12 @@
776776
"walk": 40
777777
},
778778
"speed_all": {
779-
"burrow": 0.0,
780-
"climb": 20.0,
781-
"crawl": 20.0,
782-
"fly": 0.0,
779+
"burrow": 0,
780+
"climb": 20,
781+
"crawl": 20,
782+
"fly": 0,
783783
"hover": false,
784-
"swim": 20.0,
784+
"swim": 20,
785785
"unit": "feet",
786786
"walk": 40
787787
},
@@ -988,12 +988,12 @@
988988
"walk": 40
989989
},
990990
"speed_all": {
991-
"burrow": 0.0,
992-
"climb": 20.0,
993-
"crawl": 20.0,
994-
"fly": 0.0,
991+
"burrow": 0,
992+
"climb": 20,
993+
"crawl": 20,
994+
"fly": 0,
995995
"hover": false,
996-
"swim": 20.0,
996+
"swim": 20,
997997
"unit": "feet",
998998
"walk": 40
999999
},
@@ -1200,12 +1200,12 @@
12001200
"walk": 40
12011201
},
12021202
"speed_all": {
1203-
"burrow": 0.0,
1204-
"climb": 20.0,
1205-
"crawl": 20.0,
1206-
"fly": 0.0,
1203+
"burrow": 0,
1204+
"climb": 20,
1205+
"crawl": 20,
1206+
"fly": 0,
12071207
"hover": false,
1208-
"swim": 20.0,
1208+
"swim": 20,
12091209
"unit": "feet",
12101210
"walk": 40
12111211
},
@@ -1411,12 +1411,12 @@
14111411
"walk": 40
14121412
},
14131413
"speed_all": {
1414-
"burrow": 0.0,
1415-
"climb": 20.0,
1416-
"crawl": 20.0,
1417-
"fly": 0.0,
1414+
"burrow": 0,
1415+
"climb": 20,
1416+
"crawl": 20,
1417+
"fly": 0,
14181418
"hover": false,
1419-
"swim": 20.0,
1419+
"swim": 20,
14201420
"unit": "feet",
14211421
"walk": 40
14221422
},
@@ -1613,12 +1613,12 @@
16131613
"walk": 60
16141614
},
16151615
"speed_all": {
1616-
"burrow": 0.0,
1617-
"climb": 30.0,
1618-
"crawl": 30.0,
1619-
"fly": 0.0,
1616+
"burrow": 0,
1617+
"climb": 30,
1618+
"crawl": 30,
1619+
"fly": 0,
16201620
"hover": false,
1621-
"swim": 30.0,
1621+
"swim": 30,
16221622
"unit": "feet",
16231623
"walk": 60
16241624
},
@@ -1810,12 +1810,12 @@
18101810
"walk": 60
18111811
},
18121812
"speed_all": {
1813-
"burrow": 0.0,
1814-
"climb": 30.0,
1815-
"crawl": 30.0,
1816-
"fly": 0.0,
1813+
"burrow": 0,
1814+
"climb": 30,
1815+
"crawl": 30,
1816+
"fly": 0,
18171817
"hover": false,
1818-
"swim": 30.0,
1818+
"swim": 30,
18191819
"unit": "feet",
18201820
"walk": 60
18211821
},

0 commit comments

Comments
 (0)