from .base import Base from typing import List class Jumpgate(Base): range: int faction: str systems:List[str] = [] def update(self, d): self.setlst('systems', d, 'connectedSystems', 'symbol') self.seta('faction', d, 'factionSymbol') self.seta('range', d, 'jumpRange') @classmethod def ext(self): return 'jmp' def path(self): sector, system, symbol = self.symbol.split('-') return f'atlas/{sector}/{system[0:1]}/{system}/{symbol}.{self.ext()}'