Finish overhauling module-related fit commands

This commit is contained in:
DarkPhoenix
2019-04-12 14:32:25 +03:00
parent e5a694384d
commit d738ba615e
11 changed files with 132 additions and 193 deletions

View File

@@ -18,7 +18,7 @@
# =============================================================================
from eos.db.gamedata.queries import getAttributeInfo
from eos.db.gamedata.queries import getAttributeInfo, getDynamicItem
from gui.utils.numberFormatter import roundToPrec
from service.port.shared import fetchItem
@@ -42,27 +42,28 @@ def renderMutant(mutant, firstPrefix='', prefix=''):
def parseMutant(lines):
# Fetch base item type
try:
baseName = lines[0]
baseItemName = lines[0]
except IndexError:
return None
baseType = fetchItem(baseName.strip())
if baseType is None:
baseItem = fetchItem(baseItemName.strip())
if baseItem is None:
return None, None, {}
# Fetch mutaplasmid item type and actual item
try:
mutaName = lines[1]
mutaplasmidName = lines[1]
except IndexError:
return baseType, None, {}
mutaType = fetchItem(mutaName.strip())
if mutaType is None:
return baseType, None, {}
return baseItem, None, {}
mutaplasmidItem = fetchItem(mutaplasmidName.strip())
if mutaplasmidItem is None:
return baseItem, None, {}
mutaplasmidItem = getDynamicItem(mutaplasmidItem.ID)
# Process mutated attribute values
try:
mutaAttrsLine = lines[2]
mutationsLine = lines[2]
except IndexError:
return baseType, mutaType, {}
mutaAttrs = {}
pairs = [p.strip() for p in mutaAttrsLine.split(',')]
return baseItem, mutaplasmidItem, {}
mutations = {}
pairs = [p.strip() for p in mutationsLine.split(',')]
for pair in pairs:
try:
attrName, value = pair.split(' ')
@@ -75,5 +76,5 @@ def parseMutant(lines):
attrInfo = getAttributeInfo(attrName.strip())
if attrInfo is None:
continue
mutaAttrs[attrInfo.ID] = value
return baseType, mutaType, mutaAttrs
mutations[attrInfo.ID] = value
return baseItem, mutaplasmidItem, mutations