Skip to content

Commit

Permalink
Adding a WorkerResult and the MoveToFortWorker only takes a single st…
Browse files Browse the repository at this point in the history
…ep towards a fort (PokemonGoF#1146)
  • Loading branch information
elicwhite authored and MFizz committed Jul 29, 2016
1 parent 426c8ca commit a23b356
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 15 deletions.
33 changes: 18 additions & 15 deletions pokemongo_bot/cell_workers/move_to_fort_worker.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
from pokemongo_bot.human_behaviour import sleep
from pokemongo_bot import logger
from pokemongo_bot.step_walker import StepWalker
from pokemongo_bot.worker_result import WorkerResult

class MoveToFortWorker(object):
def __init__(self, fort, bot):
Expand All @@ -11,6 +12,7 @@ def __init__(self, fort, bot):
self.config = bot.config
self.navigator = bot.navigator
self.position = bot.position
self._step_walker = None

def work(self):
lat = self.fort['latitude']
Expand All @@ -29,20 +31,21 @@ def work(self):
position = (lat, lng, 0.0)

if self.config.walk > 0:
step_walker = StepWalker(
self.bot,
self.config.walk,
self.api._position_lat,
self.api._position_lng,
position[0],
position[1]
)

while distance(i2f(self.api._position_lat), i2f(self.api._position_lng), lat, lng) > 10:
if step_walker.step():
break
else:
self.bot.process_cells(work_on_forts=False)
if self._step_walker == None:
self._step_walker = StepWalker(
self.bot,
self.config.walk,
self.api._position_lat,
self.api._position_lng,
position[0],
position[1]
)


if self._step_walker.step():
return WorkerResult.SUCCESS
else:
return WorkerResult.RUNNING

else:
self.api.set_position(*position)
Expand All @@ -51,6 +54,6 @@ def work(self):
response_dict = self.api.call()
logger.log('Arrived at Pokestop')
sleep(2)
return response_dict
return WorkerResult.SUCCESS

return None
3 changes: 3 additions & 0 deletions pokemongo_bot/worker_result.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
class WorkerResult(object):
RUNNING = 'RUNNING'
SUCCESS = 'SUCCESS'

0 comments on commit a23b356

Please sign in to comment.