draft of misc patches for main branch
This commit is contained in:
@@ -56,7 +56,7 @@ fits_table = Table("fits", saveddata_meta,
|
|||||||
Column("booster", Boolean, nullable=False, index=True, default=0),
|
Column("booster", Boolean, nullable=False, index=True, default=0),
|
||||||
Column("targetResistsID", ForeignKey("targetResists.ID"), nullable=True),
|
Column("targetResistsID", ForeignKey("targetResists.ID"), nullable=True),
|
||||||
Column("modeID", Integer, nullable=True),
|
Column("modeID", Integer, nullable=True),
|
||||||
Column("implantLocation", Integer, nullable=False, default=ImplantLocation.FIT),
|
Column("implantLocation", Integer, nullable=True),
|
||||||
Column("notes", String, nullable=True),
|
Column("notes", String, nullable=True),
|
||||||
Column("ignoreRestrictions", Boolean, default=0),
|
Column("ignoreRestrictions", Boolean, default=0),
|
||||||
Column("created", DateTime, nullable=True, default=datetime.datetime.now),
|
Column("created", DateTime, nullable=True, default=datetime.datetime.now),
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ type = "passive"
|
|||||||
|
|
||||||
|
|
||||||
def handler(fit, src, context):
|
def handler(fit, src, context):
|
||||||
lvl = src.level
|
lvl = src.level if "skill" in context else 1
|
||||||
fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp",
|
fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp",
|
||||||
src.getModifiedItemAttr("hullHpBonus") * lvl)
|
src.getModifiedItemAttr("hullHpBonus") * lvl)
|
||||||
fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP",
|
fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP",
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ type = "passive"
|
|||||||
|
|
||||||
|
|
||||||
def handler(fit, src, context):
|
def handler(fit, src, context):
|
||||||
lvl = src.level
|
lvl = src.level if "skill" in context else 1
|
||||||
fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier",
|
fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier",
|
||||||
src.getModifiedItemAttr("damageMultiplierBonus") * lvl)
|
src.getModifiedItemAttr("damageMultiplierBonus") * lvl)
|
||||||
fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"),
|
fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"),
|
||||||
|
|||||||
@@ -592,7 +592,7 @@ class Unit(EqBase):
|
|||||||
lambda d: d * 1000.0,
|
lambda d: d * 1000.0,
|
||||||
lambda u: u),
|
lambda u: u),
|
||||||
"Boolean": (
|
"Boolean": (
|
||||||
lambda v, u: "Yes" if v == 1 else "No",
|
lambda v: "Yes" if v == 1 else "No",
|
||||||
lambda d: 1.0 if d == "Yes" else 0.0,
|
lambda d: 1.0 if d == "Yes" else 0.0,
|
||||||
lambda u: ""),
|
lambda u: ""),
|
||||||
"typeID": (
|
"typeID": (
|
||||||
|
|||||||
@@ -34,6 +34,10 @@ class PFGeneralPref(PreferenceView):
|
|||||||
self.m_staticline1 = wx.StaticLine(panel, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL)
|
self.m_staticline1 = wx.StaticLine(panel, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL)
|
||||||
mainSizer.Add(self.m_staticline1, 0, wx.EXPAND | wx.TOP | wx.BOTTOM, 5)
|
mainSizer.Add(self.m_staticline1, 0, wx.EXPAND | wx.TOP | wx.BOTTOM, 5)
|
||||||
|
|
||||||
|
self.cbDefaultCharImplants = wx.CheckBox(panel, wx.ID_ANY, "Have new fits default to character implants",
|
||||||
|
wx.DefaultPosition, wx.DefaultSize, 0)
|
||||||
|
mainSizer.Add(self.cbDefaultCharImplants, 0, wx.ALL | wx.EXPAND, 5)
|
||||||
|
|
||||||
self.cbGlobalChar = wx.CheckBox(panel, wx.ID_ANY, "Use global character", wx.DefaultPosition, wx.DefaultSize,
|
self.cbGlobalChar = wx.CheckBox(panel, wx.ID_ANY, "Use global character", wx.DefaultPosition, wx.DefaultSize,
|
||||||
0)
|
0)
|
||||||
mainSizer.Add(self.cbGlobalChar, 0, wx.ALL | wx.EXPAND, 5)
|
mainSizer.Add(self.cbGlobalChar, 0, wx.ALL | wx.EXPAND, 5)
|
||||||
@@ -118,6 +122,7 @@ class PFGeneralPref(PreferenceView):
|
|||||||
|
|
||||||
self.sFit = Fit.getInstance()
|
self.sFit = Fit.getInstance()
|
||||||
|
|
||||||
|
self.cbDefaultCharImplants.SetValue(self.sFit.serviceFittingOptions["useCharecterImplantsByDefault"])
|
||||||
self.cbGlobalChar.SetValue(self.sFit.serviceFittingOptions["useGlobalCharacter"])
|
self.cbGlobalChar.SetValue(self.sFit.serviceFittingOptions["useGlobalCharacter"])
|
||||||
self.cbGlobalDmgPattern.SetValue(self.sFit.serviceFittingOptions["useGlobalDamagePattern"])
|
self.cbGlobalDmgPattern.SetValue(self.sFit.serviceFittingOptions["useGlobalDamagePattern"])
|
||||||
self.cbFitColorSlots.SetValue(self.sFit.serviceFittingOptions["colorFitBySlot"] or False)
|
self.cbFitColorSlots.SetValue(self.sFit.serviceFittingOptions["colorFitBySlot"] or False)
|
||||||
@@ -135,6 +140,7 @@ class PFGeneralPref(PreferenceView):
|
|||||||
self.cbShowShipBrowserTooltip.SetValue(self.sFit.serviceFittingOptions["showShipBrowserTooltip"])
|
self.cbShowShipBrowserTooltip.SetValue(self.sFit.serviceFittingOptions["showShipBrowserTooltip"])
|
||||||
self.intDelay.SetValue(self.sFit.serviceFittingOptions["marketSearchDelay"])
|
self.intDelay.SetValue(self.sFit.serviceFittingOptions["marketSearchDelay"])
|
||||||
|
|
||||||
|
self.cbDefaultCharImplants.Bind(wx.EVT_CHECKBOX, self.OnCBDefaultCharImplantsStateChange)
|
||||||
self.cbGlobalChar.Bind(wx.EVT_CHECKBOX, self.OnCBGlobalCharStateChange)
|
self.cbGlobalChar.Bind(wx.EVT_CHECKBOX, self.OnCBGlobalCharStateChange)
|
||||||
self.cbGlobalDmgPattern.Bind(wx.EVT_CHECKBOX, self.OnCBGlobalDmgPatternStateChange)
|
self.cbGlobalDmgPattern.Bind(wx.EVT_CHECKBOX, self.OnCBGlobalDmgPatternStateChange)
|
||||||
self.cbFitColorSlots.Bind(wx.EVT_CHECKBOX, self.onCBGlobalColorBySlot)
|
self.cbFitColorSlots.Bind(wx.EVT_CHECKBOX, self.onCBGlobalColorBySlot)
|
||||||
@@ -183,6 +189,10 @@ class PFGeneralPref(PreferenceView):
|
|||||||
wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID))
|
wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID))
|
||||||
event.Skip()
|
event.Skip()
|
||||||
|
|
||||||
|
def OnCBDefaultCharImplantsStateChange(self, event):
|
||||||
|
self.sFit.serviceFittingOptions["useCharecterImplantsByDefault"] = self.cbDefaultCharImplants.GetValue()
|
||||||
|
event.Skip()
|
||||||
|
|
||||||
def OnCBGlobalCharStateChange(self, event):
|
def OnCBGlobalCharStateChange(self, event):
|
||||||
self.sFit.serviceFittingOptions["useGlobalCharacter"] = self.cbGlobalChar.GetValue()
|
self.sFit.serviceFittingOptions["useGlobalCharacter"] = self.cbGlobalChar.GetValue()
|
||||||
event.Skip()
|
event.Skip()
|
||||||
|
|||||||
@@ -45,8 +45,15 @@ class CharacterSelection(wx.Panel):
|
|||||||
# cache current selection to fall back in case we choose to open char editor
|
# cache current selection to fall back in case we choose to open char editor
|
||||||
self.charCache = None
|
self.charCache = None
|
||||||
|
|
||||||
self.charChoice = wx.Choice(self)
|
#self.charChoice = wx.Choice(self)
|
||||||
mainSizer.Add(self.charChoice, 1, wx.ALIGN_CENTER_VERTICAL | wx.RIGHT | wx.LEFT, 3)
|
#self.charChoice.Append('blarg')
|
||||||
|
#self.charChoice = wx.Choice(self, wx.ID_ANY, wx.Point(-1,0), wx.DefaultSize, [], style=0, validator=wx.DefaultValidator, name='welp')
|
||||||
|
self.charChoice = wx.ComboBox(
|
||||||
|
self, id=wx.ID_ANY, value="", pos=wx.DefaultPosition,
|
||||||
|
size=wx.DefaultSize, choices=[], style=wx.CB_READONLY, validator=wx.DefaultValidator,
|
||||||
|
name='welp'
|
||||||
|
)
|
||||||
|
mainSizer.Add(self.charChoice, 1, wx.ALIGN_RIGHT | wx.RIGHT | wx.LEFT, 3)
|
||||||
|
|
||||||
self.refreshCharacterList()
|
self.refreshCharacterList()
|
||||||
|
|
||||||
@@ -74,7 +81,8 @@ class CharacterSelection(wx.Panel):
|
|||||||
|
|
||||||
self.skillReqsStaticBitmap.Bind(wx.EVT_RIGHT_UP, self.OnContextMenu)
|
self.skillReqsStaticBitmap.Bind(wx.EVT_RIGHT_UP, self.OnContextMenu)
|
||||||
|
|
||||||
self.Bind(wx.EVT_CHOICE, self.charChanged)
|
#self.Bind(wx.EVT_CHOICE, self.charChanged)
|
||||||
|
self.Bind(wx.EVT_COMBOBOX, self.charChanged)
|
||||||
self.mainFrame.Bind(GE.CHAR_LIST_UPDATED, self.refreshCharacterList)
|
self.mainFrame.Bind(GE.CHAR_LIST_UPDATED, self.refreshCharacterList)
|
||||||
self.mainFrame.Bind(GE.FIT_CHANGED, self.fitChanged)
|
self.mainFrame.Bind(GE.FIT_CHANGED, self.fitChanged)
|
||||||
|
|
||||||
@@ -120,6 +128,91 @@ class CharacterSelection(wx.Panel):
|
|||||||
selection = self.charChoice.GetCurrentSelection()
|
selection = self.charChoice.GetCurrentSelection()
|
||||||
return self.charChoice.GetClientData(selection) if selection is not -1 else None
|
return self.charChoice.GetClientData(selection) if selection is not -1 else None
|
||||||
|
|
||||||
|
def padChoice(self, ind):
|
||||||
|
return;
|
||||||
|
from logbook import Logger
|
||||||
|
pyfalog = Logger(__name__)
|
||||||
|
#sChar = Character.getInstance()
|
||||||
|
#activeChar = self.getActiveCharacter()
|
||||||
|
#charList = sorted(sChar.getCharacterList(), key=lambda c: (not c.ro, c.name))
|
||||||
|
charList = list(self.charChoice.GetItems())
|
||||||
|
selection = charList[ind]
|
||||||
|
maxOverallLength = max(map(lambda c: self.mainFrame.GetTextExtent(c).x, charList))
|
||||||
|
maxOverallLength = max(self.mainFrame.GetTextExtent("\u2015 Open Character Editor \u2015").x, maxOverallLength)
|
||||||
|
summedSizeO = sum([
|
||||||
|
self.btnRefresh.GetSize().x if 'btnRefresh' in dir(self) else 0,
|
||||||
|
self.skillReqsStaticBitmap.GetSize().x if 'skillReqsStaticBitmap' in dir(self) else 0,
|
||||||
|
self.mainFrame.GetTextExtent("Character: ").x,
|
||||||
|
self.charChoice.GetSize().x if 'charChoice' in dir(self) \
|
||||||
|
and self.charChoice is not None and 'GetSize' in dir(self.charChoice) else 0,
|
||||||
|
])
|
||||||
|
summedSize = sum([
|
||||||
|
self.btnRefresh.GetSize().x if 'btnRefresh' in dir(self) else 0,
|
||||||
|
self.skillReqsStaticBitmap.GetSize().x if 'skillReqsStaticBitmap' in dir(self) else 0,
|
||||||
|
self.mainFrame.GetTextExtent("Character: ").x,
|
||||||
|
self.charCache.GetSize().x if 'charCache' in dir(self) \
|
||||||
|
and self.charCache is not None and 'GetSize' in dir(self.charCache) else 0
|
||||||
|
])
|
||||||
|
realSize = self.GetSize().x
|
||||||
|
#sizeGap = summedSize - realSize
|
||||||
|
sizeGap = self.GetBestVirtualSize().x - realSize
|
||||||
|
paddedName = selection
|
||||||
|
|
||||||
|
maxFromContent = self.mainFrame.GetTextExtent(paddedName).x + sizeGap
|
||||||
|
maxLength = min(maxFromContent, maxOverallLength)
|
||||||
|
paddingOccured = False
|
||||||
|
while self.mainFrame.GetTextExtent(' ' + paddedName).x <= maxLength:
|
||||||
|
paddingOccured = True
|
||||||
|
paddedName = ' ' + paddedName
|
||||||
|
charIDRef = int(self.charChoice.GetClientData(ind))
|
||||||
|
pyfalog.error('wwwww')
|
||||||
|
pyfalog.error(paddedName)
|
||||||
|
pyfalog.error(self.mainFrame.GetTextExtent(paddedName).x)
|
||||||
|
pyfalog.error(maxFromContent)
|
||||||
|
pyfalog.error(maxOverallLength)
|
||||||
|
pyfalog.error('\n')
|
||||||
|
pyfalog.error(self.charChoice.GetContainingSizer().GetSize().x)
|
||||||
|
pyfalog.error(realSize)
|
||||||
|
pyfalog.error(self.GetBestSize().x)
|
||||||
|
pyfalog.error(self.GetBestVirtualSize().x)
|
||||||
|
pyfalog.error('\n')
|
||||||
|
pyfalog.error(summedSizeO)
|
||||||
|
pyfalog.error(summedSize)
|
||||||
|
pyfalog.error(
|
||||||
|
self.charChoice.GetSize().x if 'charChoice' in dir(self) \
|
||||||
|
and self.charChoice is not None and 'GetSize' in dir(self.charChoice) else 0
|
||||||
|
)
|
||||||
|
pyfalog.error(
|
||||||
|
self.charCache.GetSize().x if 'charCache' in dir(self) \
|
||||||
|
and self.charCache is not None and 'GetSize' in dir(self.charCache) else 0
|
||||||
|
)
|
||||||
|
pyfalog.error(charIDRef)
|
||||||
|
pyfalog.error(ind)
|
||||||
|
pyfalog.error(list(self.charChoice.GetItems()))
|
||||||
|
###
|
||||||
|
import re
|
||||||
|
for i in range(len(self.charChoice.GetItems())):
|
||||||
|
origStr = list(self.charChoice.GetItems())[i]
|
||||||
|
idStore = int(self.charChoice.GetClientData(i))
|
||||||
|
self.charChoice.Delete(i)
|
||||||
|
trimmedStr = ''
|
||||||
|
for n in range(len(origStr)):
|
||||||
|
if trimmedStr is not '' or origStr[n] != ' ':
|
||||||
|
trimmedStr += origStr[n]
|
||||||
|
possibleName = trimmedStr#re.split(" *", origStr)
|
||||||
|
pyfalog.error('uuu')
|
||||||
|
pyfalog.error(possibleName)
|
||||||
|
self.charChoice.Insert(possibleName, i, idStore)
|
||||||
|
|
||||||
|
if paddingOccured:
|
||||||
|
self.charChoice.Delete(ind)
|
||||||
|
pyfalog.error(list(self.charChoice.GetItems()))
|
||||||
|
self.charChoice.Insert(paddedName, ind, charIDRef)
|
||||||
|
self.charChoice.Select(ind)
|
||||||
|
pyfalog.error(list(self.charChoice.GetItems()))
|
||||||
|
pyfalog.error(int(self.charChoice.GetClientData(ind)))
|
||||||
|
pyfalog.error('wwwww')
|
||||||
|
|
||||||
def refreshCharacterList(self, event=None):
|
def refreshCharacterList(self, event=None):
|
||||||
choice = self.charChoice
|
choice = self.charChoice
|
||||||
sChar = Character.getInstance()
|
sChar = Character.getInstance()
|
||||||
@@ -128,10 +221,30 @@ class CharacterSelection(wx.Panel):
|
|||||||
choice.Clear()
|
choice.Clear()
|
||||||
charList = sorted(sChar.getCharacterList(), key=lambda c: (not c.ro, c.name))
|
charList = sorted(sChar.getCharacterList(), key=lambda c: (not c.ro, c.name))
|
||||||
picked = False
|
picked = False
|
||||||
|
from logbook import Logger
|
||||||
|
pyfalog = Logger(__name__)
|
||||||
|
maxOverallLength = max(map(lambda c: self.mainFrame.GetTextExtent(c.name).x, charList))
|
||||||
|
maxOverallLength = max(self.mainFrame.GetTextExtent("\u2015 Open Character Editor \u2015").x, maxOverallLength)
|
||||||
|
#summedSize = sum([
|
||||||
|
# self.btnRefresh.GetSize().x if 'btnRefresh' in dir(self) else 0,
|
||||||
|
# self.skillReqsStaticBitmap.GetSize().x if 'skillReqsStaticBitmap' in dir(self) else 0,
|
||||||
|
# self.mainFrame.GetTextExtent("Character: ").x,
|
||||||
|
# self.charCache.GetSize().x if 'charCache' in dir(self) and self.charCache is not None else 0,
|
||||||
|
# ])
|
||||||
|
#realSize = self.GetSize().x
|
||||||
|
#sizeGap = summedSize - realSize
|
||||||
for char in charList:
|
for char in charList:
|
||||||
currId = choice.Append(char.name, char.ID)
|
paddedName = char.name
|
||||||
|
#maxFromContent = self.mainFrame.GetTextExtent(paddedName).x + self.mainFrame.GetTextExtent("Character: ").x
|
||||||
|
#maxFromContent = self.mainFrame.GetTextExtent(paddedName).x + sizeGap
|
||||||
|
#maxLength = min(maxFromContent, maxOverallLength)
|
||||||
|
#while self.mainFrame.GetTextExtent(paddedName).x < maxLength:
|
||||||
|
# paddedName = ' ' + paddedName
|
||||||
|
#currId = choice.Append(str(maxFromContent) + ' ' + \
|
||||||
|
# str(self.mainFrame.GetTextExtent(paddedName).x) + ' ' + str(maxLength), char.ID)
|
||||||
|
currId = choice.Append(paddedName, char.ID)
|
||||||
if char.ID == activeChar:
|
if char.ID == activeChar:
|
||||||
|
self.padChoice(currId)
|
||||||
choice.SetSelection(currId)
|
choice.SetSelection(currId)
|
||||||
self.charChanged(None)
|
self.charChanged(None)
|
||||||
picked = True
|
picked = True
|
||||||
@@ -173,16 +286,27 @@ class CharacterSelection(wx.Panel):
|
|||||||
|
|
||||||
if charID == -1:
|
if charID == -1:
|
||||||
# revert to previous character
|
# revert to previous character
|
||||||
|
self.padChoice(self.charCache)
|
||||||
|
pyfalog.error('GGG')
|
||||||
self.charChoice.SetSelection(self.charCache)
|
self.charChoice.SetSelection(self.charCache)
|
||||||
|
pyfalog.error('GGG')
|
||||||
self.mainFrame.showCharacterEditor(event)
|
self.mainFrame.showCharacterEditor(event)
|
||||||
|
pyfalog.error('GGG')
|
||||||
return
|
return
|
||||||
|
self.padChoice(self.charChoice.GetCurrentSelection())
|
||||||
|
fitID = self.mainFrame.getActiveFit()
|
||||||
|
charID = self.getActiveCharacter()
|
||||||
|
pyfalog.error(self.getActiveCharacter())
|
||||||
self.toggleRefreshButton()
|
self.toggleRefreshButton()
|
||||||
|
|
||||||
|
pyfalog.error('RRR')
|
||||||
sFit = Fit.getInstance()
|
sFit = Fit.getInstance()
|
||||||
sFit.changeChar(fitID, charID)
|
sFit.changeChar(fitID, charID)
|
||||||
self.charCache = self.charChoice.GetCurrentSelection()
|
self.charCache = self.charChoice.GetCurrentSelection()
|
||||||
|
pyfalog.error('RRR')
|
||||||
|
pyfalog.error(fitID)
|
||||||
wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID))
|
wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID))
|
||||||
|
pyfalog.error('RRR')
|
||||||
|
|
||||||
def toggleRefreshButton(self):
|
def toggleRefreshButton(self):
|
||||||
charID = self.getActiveCharacter()
|
charID = self.getActiveCharacter()
|
||||||
@@ -199,6 +323,8 @@ class CharacterSelection(wx.Panel):
|
|||||||
for i in range(numItems):
|
for i in range(numItems):
|
||||||
id_ = choice.GetClientData(i)
|
id_ = choice.GetClientData(i)
|
||||||
if id_ == charID:
|
if id_ == charID:
|
||||||
|
print((list(choice.GetItems())[0]))
|
||||||
|
self.padChoice(i)
|
||||||
choice.SetSelection(i)
|
choice.SetSelection(i)
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ class ItemStatsDialog(wx.Dialog):
|
|||||||
if "wxGTK" in wx.PlatformInfo:
|
if "wxGTK" in wx.PlatformInfo:
|
||||||
self.closeBtn = wx.Button(self, wx.ID_ANY, "Close", wx.DefaultPosition, wx.DefaultSize, 0)
|
self.closeBtn = wx.Button(self, wx.ID_ANY, "Close", wx.DefaultPosition, wx.DefaultSize, 0)
|
||||||
self.mainSizer.Add(self.closeBtn, 0, wx.ALL | wx.ALIGN_RIGHT, 5)
|
self.mainSizer.Add(self.closeBtn, 0, wx.ALL | wx.ALIGN_RIGHT, 5)
|
||||||
self.closeBtn.Bind(wx.EVT_BUTTON, self.closeEvent)
|
self.closeBtn.Bind(wx.EVT_BUTTON, (lambda e: self.Close()))
|
||||||
|
|
||||||
self.SetSizer(self.mainSizer)
|
self.SetSizer(self.mainSizer)
|
||||||
|
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ from eos.saveddata.fighter import Fighter as es_Fighter
|
|||||||
from eos.saveddata.implant import Implant as es_Implant
|
from eos.saveddata.implant import Implant as es_Implant
|
||||||
from eos.saveddata.ship import Ship as es_Ship
|
from eos.saveddata.ship import Ship as es_Ship
|
||||||
from eos.saveddata.module import Module as es_Module, State, Slot
|
from eos.saveddata.module import Module as es_Module, State, Slot
|
||||||
from eos.saveddata.fit import Fit as FitType
|
from eos.saveddata.fit import Fit as FitType, ImplantLocation
|
||||||
from service.character import Character
|
from service.character import Character
|
||||||
from service.damagePattern import DamagePattern
|
from service.damagePattern import DamagePattern
|
||||||
from service.settings import SettingsProvider
|
from service.settings import SettingsProvider
|
||||||
@@ -60,6 +60,7 @@ class Fit(object):
|
|||||||
self.dirtyFitIDs = set()
|
self.dirtyFitIDs = set()
|
||||||
|
|
||||||
serviceFittingDefaultOptions = {
|
serviceFittingDefaultOptions = {
|
||||||
|
"useCharecterImplantsByDefault": True,
|
||||||
"useGlobalCharacter": False,
|
"useGlobalCharacter": False,
|
||||||
"useGlobalDamagePattern": False,
|
"useGlobalDamagePattern": False,
|
||||||
"defaultCharacter": self.character.ID,
|
"defaultCharacter": self.character.ID,
|
||||||
@@ -147,6 +148,9 @@ class Fit(object):
|
|||||||
fit.targetResists = self.targetResists
|
fit.targetResists = self.targetResists
|
||||||
fit.character = self.character
|
fit.character = self.character
|
||||||
fit.booster = self.booster
|
fit.booster = self.booster
|
||||||
|
fit.implantLocation = ImplantLocation.CHARACTER if\
|
||||||
|
self.serviceFittingOptions["useCharecterImplantsByDefault"] else\
|
||||||
|
ImplantLocation.FIT
|
||||||
eos.db.save(fit)
|
eos.db.save(fit)
|
||||||
self.recalc(fit)
|
self.recalc(fit)
|
||||||
return fit.ID
|
return fit.ID
|
||||||
|
|||||||
Reference in New Issue
Block a user