from nullptr.missions.base import BaseMission, MissionParam from nullptr.models.waypoint import Waypoint from time import time class SitMission(BaseMission): def start_state(self): return 'travel-to' @classmethod def params(cls): return { 'dest': MissionParam(Waypoint, True) } def steps(self): return { **self.travel_steps('to', 'dest', 'market'), 'sit': (self.step_sit, 'market'), 'market': (self.step_market, 'shipyard'), 'shipyard': (self.step_shipyard, 'sit') } def step_sit(self): self.next_step = time() + 15 * 60