Get a slider interface going for the items stats. Starting to come together!

This commit is contained in:
blitzmann
2018-06-04 02:21:52 -04:00
parent 3670f3289c
commit b3acc8fd21
6 changed files with 185 additions and 8 deletions

View File

@@ -26,7 +26,7 @@ from eos.db import gamedata_session
from eos.db.gamedata.metaGroup import metatypes_table, items_table
from eos.db.gamedata.group import groups_table
from eos.db.util import processEager, processWhere
from eos.gamedata import AlphaClone, Attribute, Category, Group, Item, MarketGroup, MetaGroup, AttributeInfo, MetaData
from eos.gamedata import AlphaClone, Attribute, Category, Group, Item, MarketGroup, MetaGroup, AttributeInfo, MetaData, DynamicItem
cache = {}
configVal = getattr(eos.config, "gamedataCache", None)
@@ -98,6 +98,14 @@ def getItem(lookfor, eager=None):
return item
def getMutaplasmid(lookfor, eager=None):
if isinstance(lookfor, int):
item = gamedata_session.query(DynamicItem).filter(DynamicItem.ID == lookfor).first()
else:
raise TypeError("Need integer as argument")
return item
def getItemWithBaseItemAttribute(lookfor, baseItemID, eager=None):
# A lot of this is described in more detail in #1597
item = gamedata_session.query(Item).get(lookfor)

View File

@@ -122,7 +122,7 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut):
if self.baseItemID:
self.__item = eos.db.getItemWithBaseItemAttribute(self.itemID, self.baseItemID)
self.__baseItem = eos.db.getItem(self.baseItemID)
self.__mutaplasmid = eos.db.getItem(self.mutaplasmidID)
self.__mutaplasmid = eos.db.getMutaplasmid(self.mutaplasmidID)
if self.__baseItem is None:
pyfalog.error("Base Item (id: {0}) does not exist", self.itemID)
return
@@ -195,6 +195,10 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut):
(self.__item.category.name not in ("Module", "Subsystem", "Structure Module") and
self.__item.group.name not in self.SYSTEM_GROUPS)
@property
def isMutated(self):
return self.baseItemID or self.mutaplasmidID
@property
def numCharges(self):
if self.charge is None:
@@ -333,6 +337,14 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut):
def item(self):
return self.__item if self.__item != 0 else None
@property
def baseItem(self):
return self.__baseItem if self.__baseItem != 0 else None # what?
@property
def mutaplasmid(self):
return self.__mutaplasmid if self.__mutaplasmid != 0 else None
@property
def charge(self):
return self.__charge if self.__charge != 0 else None