crews
This commit is contained in:
@@ -111,7 +111,7 @@ class Mission:
|
||||
}
|
||||
|
||||
def step_done(self):
|
||||
self.ship.log(f'mission finished with balance {self.balance()}', 3)
|
||||
self.ship.log(f'mission {type(self).__name__} finished with balance {self.balance()}', 3)
|
||||
|
||||
def is_waiting(self):
|
||||
if self.next_step > time() or self.ship.cooldown > time() or self.ship.arrival > time():
|
||||
|
||||
@@ -9,39 +9,23 @@ class MiningMission(BaseMission):
|
||||
def params(cls):
|
||||
return {
|
||||
'site': MissionParam(Waypoint, True),
|
||||
'resource': MissionParam(str, True),
|
||||
'dest': MissionParam(Waypoint, True),
|
||||
'delivery': MissionParam(str, True, 'deliver'),
|
||||
'contract': MissionParam(Contract, False)
|
||||
'resources': MissionParam(list, True)
|
||||
}
|
||||
|
||||
p
|
||||
def start_state(self):
|
||||
return 'travel-to'
|
||||
|
||||
def steps(self):
|
||||
return {
|
||||
**self.travel_steps('to', 'site', 'orbit1'),
|
||||
'orbit1': (self.step_orbit, 'extract'),
|
||||
'extract': (self.step_extract, {
|
||||
'done': 'dock',
|
||||
'more': 'extract'
|
||||
}),
|
||||
'dock': (self.step_dock, 'sell'),
|
||||
'sell': (self.step_sell, {
|
||||
'more': 'sell',
|
||||
'done': 'orbit2',
|
||||
}),
|
||||
'orbit2': (self.step_orbit, 'jettison'),
|
||||
'jettison': (self.step_dispose, {
|
||||
'more': 'jettison',
|
||||
'done': 'extract',
|
||||
'full': 'travel-back'
|
||||
}),
|
||||
**self.travel_steps('back', 'dest', 'unload'),
|
||||
'unload': (self.step_unload, {
|
||||
'done': 'travel-to',
|
||||
'more': 'unload'
|
||||
}),
|
||||
**self.travel_steps('to', 'site', 'extract'),
|
||||
'extract': (self.step_extract, {
|
||||
'more': 'extract',
|
||||
'full': 'unload'
|
||||
}),
|
||||
'unload': (self.step_unload, {
|
||||
'more': 'unload',
|
||||
'done': 'done'
|
||||
})
|
||||
}
|
||||
|
||||
def get_survey(self):
|
||||
|
||||
@@ -41,7 +41,8 @@ class SiphonMission(BaseMission):
|
||||
else:
|
||||
space = h.cargo_space()
|
||||
amt = min(space, amt)
|
||||
self.api.transfer(self.ship, h, r, amt)
|
||||
if amt > 0:
|
||||
self.api.transfer(self.ship, h, r, amt)
|
||||
return 'more'
|
||||
|
||||
def steps(self):
|
||||
|
||||
@@ -1,11 +1,19 @@
|
||||
from nullptr.missions.base import BaseMission, MissionParam
|
||||
from nullptr.models.waypoint import Waypoint
|
||||
|
||||
class SurveyMission(BaseMission):
|
||||
def start_state(self):
|
||||
return 'survey'
|
||||
return 'travel-to'
|
||||
|
||||
@classmethod
|
||||
def params(cls):
|
||||
return {
|
||||
'site': MissionParam(Waypoint, True),
|
||||
}
|
||||
|
||||
def steps(self):
|
||||
return {
|
||||
**self.travel_steps('to', 'site', 'survey'),
|
||||
'survey': (self.step_survey, 'survey')
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user