Add implants & boosters option to multibuy export

This commit is contained in:
DarkPhoenix
2019-02-11 14:11:03 +03:00
parent 3bc1ce195c
commit 59569d46ae
5 changed files with 28 additions and 14 deletions

View File

@@ -19,6 +19,7 @@
import re
from enum import Enum
from logbook import Logger
@@ -36,7 +37,6 @@ from service.fit import Fit as svcFit
from service.market import Market
from service.port.muta import parseMutant, renderMutant
from service.port.shared import IPortUser, fetchItem, processing_notify
from enum import Enum
pyfalog = Logger(__name__)
@@ -47,16 +47,17 @@ class Options(Enum):
MUTATIONS = 2
MODULE_CATS = ('Module', 'Subsystem', 'Structure Module')
SLOT_ORDER = (Slot.LOW, Slot.MED, Slot.HIGH, Slot.RIG, Slot.SUBSYSTEM, Slot.SERVICE)
OFFLINE_SUFFIX = '/OFFLINE'
EFT_OPTIONS = (
(Options.IMPLANTS.value, 'Implants && Boosters', 'Exports implants and boosters'),
(Options.MUTATIONS.value, 'Mutated Attributes', 'Exports mutated modules\' stats'),
)
MODULE_CATS = ('Module', 'Subsystem', 'Structure Module')
SLOT_ORDER = (Slot.LOW, Slot.MED, Slot.HIGH, Slot.RIG, Slot.SUBSYSTEM, Slot.SERVICE)
OFFLINE_SUFFIX = '/OFFLINE'
def exportEft(fit, options):
# EFT formatted export is split in several sections, each section is
# separated from another using 2 blank lines. Sections might have several

View File

@@ -18,10 +18,21 @@
# =============================================================================
from enum import Enum
from service.fit import Fit as svcFit
def exportMultiBuy(fit):
class Options(Enum):
IMPLANTS = 1
MULTIBUY_OPTIONS = (
(Options.IMPLANTS.value, 'Implants && Boosters', 'Exports implants and boosters'),
)
def exportMultiBuy(fit, options):
itemCounts = {}
def addItem(item, quantity=1):
@@ -45,11 +56,12 @@ def exportMultiBuy(fit):
for cargo in fit.cargo:
addItem(cargo.item, cargo.amount)
for implant in fit.implants:
addItem(implant.item)
if options & Options.IMPLANTS.value:
for implant in fit.implants:
addItem(implant.item)
for booster in fit.boosters:
addItem(booster.item)
for booster in fit.boosters:
addItem(booster.item)
exportLines = []
exportLines.append(fit.ship.item.name)

View File

@@ -284,5 +284,5 @@ class Port(object):
# Multibuy-related methods
@staticmethod
def exportMultiBuy(fit):
return exportMultiBuy(fit)
def exportMultiBuy(fit, options):
return exportMultiBuy(fit, options)