Merge branch 'default-database-profiles' of git://github.com/Ebag333/Pyfa
This commit is contained in:
@@ -14,6 +14,7 @@ __all__ = [
|
|||||||
"targetResists",
|
"targetResists",
|
||||||
"override",
|
"override",
|
||||||
"crest",
|
"crest",
|
||||||
"implantSet"
|
"implantSet",
|
||||||
|
"loadDefaultDatabaseValues"
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
186
eos/db/saveddata/loadDefaultDatabaseValues.py
Normal file
186
eos/db/saveddata/loadDefaultDatabaseValues.py
Normal file
@@ -0,0 +1,186 @@
|
|||||||
|
#===============================================================================
|
||||||
|
# Copyright (C) 2010 Diego Duclos
|
||||||
|
#
|
||||||
|
# This file is part of pyfa.
|
||||||
|
#
|
||||||
|
# pyfa is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# pyfa is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with pyfa. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#===============================================================================
|
||||||
|
|
||||||
|
import eos.db
|
||||||
|
import eos.types
|
||||||
|
|
||||||
|
class ImportError(Exception):
|
||||||
|
pass
|
||||||
|
|
||||||
|
class defaultDatabaseValues():
|
||||||
|
instance = None
|
||||||
|
@classmethod
|
||||||
|
|
||||||
|
def importDamageProfileDefaults(self):
|
||||||
|
damageProfileList = []
|
||||||
|
damageProfileList.append(["Uniform", "25", "25", "25", "25"])
|
||||||
|
damageProfileList.append(["[Generic]EM", "100", "0", "0", "0"])
|
||||||
|
damageProfileList.append(["[Generic]Thermal", "0", "100", "0", "0"])
|
||||||
|
damageProfileList.append(["[Generic]Kinetic", "0", "0", "100", "0"])
|
||||||
|
damageProfileList.append(["[Generic]Explosive", "0", "0", "0", "100"])
|
||||||
|
damageProfileList.append(["[NPC][Asteroid] Blood Raiders", "5067", "4214", "0", "0"])
|
||||||
|
damageProfileList.append(["[Bombs]Concussion Bomb", "0", "0", "6400", "0"])
|
||||||
|
damageProfileList.append(["[Bombs]Electron Bomb", "6400", "0", "0", "0"])
|
||||||
|
damageProfileList.append(["[Bombs]Scorch Bomb", "0", "6400", "0", "0"])
|
||||||
|
damageProfileList.append(["[Bombs]Shrapnel Bomb", "0", "0", "0", "6400"])
|
||||||
|
damageProfileList.append(["[Frequency Crystals][T2] Gleam", "56", "56", "0", "0"])
|
||||||
|
damageProfileList.append(["[Frequency Crystals][T2] Aurora", "40", "24", "0", "0"])
|
||||||
|
damageProfileList.append(["[Frequency Crystals][T2] Scorch", "72", "16", "0", "0"])
|
||||||
|
damageProfileList.append(["[Frequency Crystals][T2] Conflagration", "61.6", "61.6", "0", "0"])
|
||||||
|
damageProfileList.append(["[Frequency Crystals]Gamma", "61.6", "35.2", "0", "0"])
|
||||||
|
damageProfileList.append(["[Frequency Crystals]Infrared", "44", "17.6", "0", "0"])
|
||||||
|
damageProfileList.append(["[Frequency Crystals]Microwave", "35.2", "17.6", "0", "0"])
|
||||||
|
damageProfileList.append(["[Frequency Crystals]Multifrequency", "61.6", "44", "0", "0"])
|
||||||
|
damageProfileList.append(["[Frequency Crystals]Radio", "44", "0", "0", "0"])
|
||||||
|
damageProfileList.append(["[Frequency Crystals]Standard", "44", "26.4", "0", "0"])
|
||||||
|
damageProfileList.append(["[Frequency Crystals]Ultraviolet", "52.8", "26.4", "0", "0"])
|
||||||
|
damageProfileList.append(["[Frequency Crystals]Xray", "52.8", "35.2", "0", "0"])
|
||||||
|
damageProfileList.append(["[Hybrid Charges][T2] Void", "0", "61.6", "61.6", "0"])
|
||||||
|
damageProfileList.append(["[Hybrid Charges][T2] Null", "0", "48", "40", "0"])
|
||||||
|
damageProfileList.append(["[Hybrid Charges][T2] Javelin", "0", "64", "48", "0"])
|
||||||
|
damageProfileList.append(["[Hybrid Charges][T2] Spike", "0", "32", "32", "0"])
|
||||||
|
damageProfileList.append(["[Hybrid Charges]Antimatter", "0", "48", "67.2", "0"])
|
||||||
|
damageProfileList.append(["[Hybrid Charges]Iridium", "0", "28.8", "38.4", "0"])
|
||||||
|
damageProfileList.append(["[Hybrid Charges]Iron", "0", "19.2", "28.8", "0"])
|
||||||
|
damageProfileList.append(["[Hybrid Charges]Lead", "0", "28.8", "48", "0"])
|
||||||
|
damageProfileList.append(["[Hybrid Charges]Plutonium", "0", "48", "57.6", "0"])
|
||||||
|
damageProfileList.append(["[Hybrid Charges]Thorium", "0", "38.4", "48", "0"])
|
||||||
|
damageProfileList.append(["[Hybrid Charges]Tungsten", "0", "19.2", "38.4", "0"])
|
||||||
|
damageProfileList.append(["[Hybrid Charges]Uranium", "0", "38.4", "57.6", "0"])
|
||||||
|
damageProfileList.append(["[Missiles]Mjolnir", "100", "0", "0", "0"])
|
||||||
|
damageProfileList.append(["[Missiles]Inferno", "0", "100", "0", "0"])
|
||||||
|
damageProfileList.append(["[Missiles]Scourge", "0", "0", "100", "0"])
|
||||||
|
damageProfileList.append(["[Missiles]Nova", "0", "0", "0", "100"])
|
||||||
|
damageProfileList.append(["[Missiles][Structure) Standup Missile", "100", "100", "100", "100"])
|
||||||
|
damageProfileList.append(["[Projectile Ammo][T2] Tremor", "0", "0", "24", "40"])
|
||||||
|
damageProfileList.append(["[Projectile Ammo][T2] Quake", "0", "0", "40", "72"])
|
||||||
|
damageProfileList.append(["[Projectile Ammo][T2] Hail", "0", "0", "26.4", "96.8"])
|
||||||
|
damageProfileList.append(["[Projectile Ammo][T2] Barrage", "0", "0", "40", "48"])
|
||||||
|
damageProfileList.append(["[Projectile Ammo]Carbonized Lead", "0", "0", "35.2", "8.8"])
|
||||||
|
damageProfileList.append(["[Projectile Ammo]Depleted Uranium", "0", "26.4", "17.6", "26.4"])
|
||||||
|
damageProfileList.append(["[Projectile Ammo]EMP", "79.2", "0", "8.8", "17.6"])
|
||||||
|
damageProfileList.append(["[Projectile Ammo]Fusion", "0", "0", "17.6", "88"])
|
||||||
|
damageProfileList.append(["[Projectile Ammo]Nuclear", "0", "0", "8.8", "35.2"])
|
||||||
|
damageProfileList.append(["[Projectile Ammo]Phased Plasma", "0", "88", "17.6", "0"])
|
||||||
|
damageProfileList.append(["[Projectile Ammo]Proton", "26.4", "0", "17.6", "0"])
|
||||||
|
damageProfileList.append(["[Projectile Ammo]Titanium Sabot", "0", "0", "52.8", "176"])
|
||||||
|
damageProfileList.append(["[NPC][Burner] Cruor (Blood Raiders)", "90", "90", "0", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Burner] Dramiel (Angel)", "55", "0", "20", "96"])
|
||||||
|
damageProfileList.append(["[NPC][Burner] Daredevil (Serpentis)", "0", "110", "154", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Burner] Succubus (Sanshas Nation)", "135", "30", "0", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Burner] Worm (Guristas)", "0", "0", "228", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Burner] Enyo", "0", "147", "147", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Burner] Hawk", "0", "0", "247", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Burner] Jaguar", "36", "0", "50", "182"])
|
||||||
|
damageProfileList.append(["[NPC][Burner] Vengeance", "232", "0", "0", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Burner] Ashimmu (Blood Raiders)", "260", "100", "0", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Burner] Talos", "0", "413", "413", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Burner] Sentinel", "0", "75", "0", "90"])
|
||||||
|
damageProfileList.append(["[NPC][Asteroid] Angel Cartel", "1838", "562", "2215", "3838"])
|
||||||
|
damageProfileList.append(["[NPC][Deadspace] Angel Cartel", "369", "533", "1395", "3302"])
|
||||||
|
damageProfileList.append(["[NPC][Deadspace] Blood Raiders", "6040", "5052", "10", "15"])
|
||||||
|
damageProfileList.append(["[NPC][Asteroid] Guristas", "0", "1828", "7413", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Deadspace] Guristas", "0", "1531", "9680", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Asteroid] Rogue Drone", "394", "666", "1090", "1687"])
|
||||||
|
damageProfileList.append(["[NPC][Deadspace] Rogue Drone", "276", "1071", "1069", "871"])
|
||||||
|
damageProfileList.append(["[NPC][Asteroid] Sanshas Nation", "5586", "4112", "0", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Deadspace] Sanshas Nation", "3009", "2237", "0", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Asteroid] Serpentis", "0", "5373", "4813", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Deadspace] Serpentis", "0", "3110", "1929", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Mission] Amarr Empire", "4464", "3546", "97", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Mission] Caldari State", "0", "2139", "4867", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Mission] CONCORD", "336", "134", "212", "412"])
|
||||||
|
damageProfileList.append(["[NPC][Mission] Gallente Federation", "9", "3712", "2758", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Mission] Khanid", "612", "483", "43", "6"])
|
||||||
|
damageProfileList.append(["[NPC][Mission] Minmatar Republic", "1024", "388", "1655", "4285"])
|
||||||
|
damageProfileList.append(["[NPC][Mission] Mordus Legion", "25", "262", "625", "0"])
|
||||||
|
damageProfileList.append(["[NPC][Mission] Thukker", "0", "52", "10", "79"])
|
||||||
|
damageProfileList.append(["[NPC][Other] Sleepers", "1472", "1472", "1384", "1384"])
|
||||||
|
damageProfileList.append(["[NPC][Other] Sansha Incursion", "1682", "1347", "3678", "3678"])
|
||||||
|
|
||||||
|
for damageProfileRow in damageProfileList:
|
||||||
|
damageProfile = eos.db.getDamagePattern(damageProfileRow[0])
|
||||||
|
if damageProfile is None:
|
||||||
|
damageProfile = eos.types.DamagePattern(damageProfileRow[1], damageProfileRow[2], damageProfileRow[3], damageProfileRow[4])
|
||||||
|
damageProfile.name = damageProfileRow[0]
|
||||||
|
eos.db.save(damageProfile)
|
||||||
|
|
||||||
|
def importResistProfileDefaults(self):
|
||||||
|
targetResistProfileList = []
|
||||||
|
targetResistProfileList.append(["Uniform (25%)", "0.25", "0.25", "0.25", "0.25"])
|
||||||
|
targetResistProfileList.append(["Uniform (50%)", "0.50", "0.50", "0.50", "0.50"])
|
||||||
|
targetResistProfileList.append(["Uniform (75%)", "0.75", "0.75", "0.75", "0.75"])
|
||||||
|
targetResistProfileList.append(["[T1 Resist]Shield", "0.0", "0.20", "0.40", "0.50"])
|
||||||
|
targetResistProfileList.append(["[T1 Resist]Armor", "0.50", "0.45", "0.25", "0.10"])
|
||||||
|
targetResistProfileList.append(["[T1 Resist]Hull", "0.33", "0.33", "0.33", "0.33"])
|
||||||
|
targetResistProfileList.append(["[T1 Resist]Shield (+T2 DCU)", "0.125", "0.30", "0.475", "0.562"])
|
||||||
|
targetResistProfileList.append(["[T1 Resist]Armor (+T2 DCU)", "0.575", "0.532", "0.363", "0.235"])
|
||||||
|
targetResistProfileList.append(["[T1 Resist]Hull (+T2 DCU)", "0.598", "0.598", "0.598", "0.598"])
|
||||||
|
targetResistProfileList.append(["[NPC][Asteroid] Angel Cartel", "0.54", "0.42", "0.37", "0.32"])
|
||||||
|
targetResistProfileList.append(["[NPC][Asteroid] Blood Raiders", "0.34", "0.39", "0.45", "0.52"])
|
||||||
|
targetResistProfileList.append(["[NPC][Asteroid] Guristas", "0.55", "0.35", "0.3", "0.48"])
|
||||||
|
targetResistProfileList.append(["[NPC][Asteroid] Rogue Drones", "0.35", "0.38", "0.44", "0.49"])
|
||||||
|
targetResistProfileList.append(["[NPC][Asteroid] Sanshas Nation", "0.35", "0.4", "0.47", "0.53"])
|
||||||
|
targetResistProfileList.append(["[NPC][Asteroid] Serpentis", "0.49", "0.38", "0.29", "0.51"])
|
||||||
|
targetResistProfileList.append(["[NPC][Deadspace] Angel Cartel", "0.59", "0.48", "0.4", "0.32"])
|
||||||
|
targetResistProfileList.append(["[NPC][Deadspace] Blood Raiders", "0.31", "0.39", "0.47", "0.56"])
|
||||||
|
targetResistProfileList.append(["[NPC][Deadspace] Guristas", "0.57", "0.39", "0.31", "0.5"])
|
||||||
|
targetResistProfileList.append(["[NPC][Deadspace] Rogue Drones", "0.42", "0.42", "0.47", "0.49"])
|
||||||
|
targetResistProfileList.append(["[NPC][Deadspace] Sanshas Nation", "0.31", "0.39", "0.47", "0.56"])
|
||||||
|
targetResistProfileList.append(["[NPC][Deadspace] Serpentis", "0.49", "0.38", "0.29", "0.56"])
|
||||||
|
targetResistProfileList.append(["[NPC][Mission] Amarr Empire", "0.34", "0.38", "0.42", "0.46"])
|
||||||
|
targetResistProfileList.append(["[NPC][Mission] Caldari State", "0.51", "0.38", "0.3", "0.51"])
|
||||||
|
targetResistProfileList.append(["[NPC][Mission] CONCORD", "0.47", "0.46", "0.47", "0.47"])
|
||||||
|
targetResistProfileList.append(["[NPC][Mission] Gallente Federation", "0.51", "0.38", "0.31", "0.52"])
|
||||||
|
targetResistProfileList.append(["[NPC][Mission] Khanid", "0.51", "0.42", "0.36", "0.4"])
|
||||||
|
targetResistProfileList.append(["[NPC][Mission] Minmatar Republic", "0.51", "0.46", "0.41", "0.35"])
|
||||||
|
targetResistProfileList.append(["[NPC][Mission] Mordus Legion", "0.32", "0.48", "0.4", "0.62"])
|
||||||
|
targetResistProfileList.append(["[NPC][Other] Sleeper", "0.61", "0.61", "0.61", "0.61"])
|
||||||
|
targetResistProfileList.append(["[NPC][Other] Sansha Incursion", "0.65", "0.63", "0.64", "0.65"])
|
||||||
|
targetResistProfileList.append(["[NPC][Burner] Cruor (Blood Raiders)", "0.8", "0.73", "0.69", "0.67"])
|
||||||
|
targetResistProfileList.append(["[NPC][Burner] Dramiel (Angel)", "0.35", "0.48", "0.61", "0.68"])
|
||||||
|
targetResistProfileList.append(["[NPC][Burner] Daredevil (Serpentis)", "0.69", "0.59", "0.59", "0.43"])
|
||||||
|
targetResistProfileList.append(["[NPC][Burner] Succubus (Sanshas Nation)", "0.35", "0.48", "0.61", "0.68"])
|
||||||
|
targetResistProfileList.append(["[NPC][Burner] Worm (Guristas)", "0.48", "0.58", "0.69", "0.74"])
|
||||||
|
targetResistProfileList.append(["[NPC][Burner] Enyo", "0.58", "0.72", "0.86", "0.24"])
|
||||||
|
targetResistProfileList.append(["[NPC][Burner] Hawk", "0.3", "0.86", "0.79", "0.65"])
|
||||||
|
targetResistProfileList.append(["[NPC][Burner] Jaguar", "0.78", "0.65", "0.48", "0.56"])
|
||||||
|
targetResistProfileList.append(["[NPC][Burner] Vengeance", "0.66", "0.56", "0.75", "0.86"])
|
||||||
|
targetResistProfileList.append(["[NPC][Burner] Ashimmu (Blood Raiders)", "0.8", "0.76", "0.68", "0.7"])
|
||||||
|
targetResistProfileList.append(["[NPC][Burner] Talos", "0.68", "0.59", "0.59", "0.43"])
|
||||||
|
targetResistProfileList.append(["[NPC][Burner] Sentinel", "0.58", "0.45", "0.52", "0.66"])
|
||||||
|
|
||||||
|
for targetResistProfileRow in targetResistProfileList:
|
||||||
|
resistsProfile = eos.db.getTargetResists(targetResistProfileRow[0])
|
||||||
|
if resistsProfile is None:
|
||||||
|
resistsProfile = eos.types.eos.types.TargetResists(targetResistProfileRow[1], targetResistProfileRow[2], targetResistProfileRow[3], targetResistProfileRow[4])
|
||||||
|
resistsProfile.name = targetResistProfileRow[0]
|
||||||
|
eos.db.save(resistsProfile)
|
||||||
|
|
||||||
|
def importRequiredDefaults(self):
|
||||||
|
damageProfileList = []
|
||||||
|
damageProfileList.append(["Uniform", "25", "25", "25", "25"])
|
||||||
|
|
||||||
|
for damageProfileRow in damageProfileList:
|
||||||
|
damageProfile = eos.db.getDamagePattern(damageProfileRow[0])
|
||||||
|
if damageProfile is None:
|
||||||
|
damageProfile = eos.types.DamagePattern(damageProfileRow[1], damageProfileRow[2], damageProfileRow[3],
|
||||||
|
damageProfileRow[4])
|
||||||
|
damageProfile.name = damageProfileRow[0]
|
||||||
|
eos.db.save(damageProfile)
|
||||||
@@ -6,13 +6,5 @@ type = "active"
|
|||||||
def handler(fit, module, context):
|
def handler(fit, module, context):
|
||||||
for type in ("kinetic", "thermal", "explosive", "em"):
|
for type in ("kinetic", "thermal", "explosive", "em"):
|
||||||
attr = "armor%sDamageResonance" % type.capitalize()
|
attr = "armor%sDamageResonance" % type.capitalize()
|
||||||
|
|
||||||
#Adjust RAH to match the current damage pattern
|
|
||||||
damagePattern = fit.damagePattern
|
|
||||||
attrDamagePattern = "%sAmount" % type
|
|
||||||
damagePatternModifier = getattr(damagePattern,attrDamagePattern)/float(sum((damagePattern.emAmount,damagePattern.thermalAmount,damagePattern.kineticAmount,damagePattern.explosiveAmount)))
|
|
||||||
modifiedResistModifier = (1-(((1-module.getModifiedItemAttr(attr))*4)*(damagePatternModifier)))
|
|
||||||
module.forceItemAttr(attr, modifiedResistModifier)
|
|
||||||
|
|
||||||
fit.ship.multiplyItemAttr(attr, module.getModifiedItemAttr(attr),
|
fit.ship.multiplyItemAttr(attr, module.getModifiedItemAttr(attr),
|
||||||
stackingPenalties=True, penaltyGroup="preMul")
|
stackingPenalties=True, penaltyGroup="preMul")
|
||||||
|
|||||||
@@ -38,6 +38,7 @@ import gui.aboutData
|
|||||||
import gui.chromeTabs
|
import gui.chromeTabs
|
||||||
import gui.utils.animUtils as animUtils
|
import gui.utils.animUtils as animUtils
|
||||||
import gui.globalEvents as GE
|
import gui.globalEvents as GE
|
||||||
|
import eos.db.saveddata.loadDefaultDatabaseValues as loadDefaultDatabaseValues
|
||||||
|
|
||||||
from gui.bitmapLoader import BitmapLoader
|
from gui.bitmapLoader import BitmapLoader
|
||||||
from gui.mainMenuBar import MainMenuBar
|
from gui.mainMenuBar import MainMenuBar
|
||||||
@@ -405,10 +406,22 @@ class MainFrame(wx.Frame):
|
|||||||
def goForums(self, event):
|
def goForums(self, event):
|
||||||
webbrowser.open('https://forums.eveonline.com/default.aspx?g=posts&t=466425')
|
webbrowser.open('https://forums.eveonline.com/default.aspx?g=posts&t=466425')
|
||||||
|
|
||||||
|
def loadDatabaseDefaults(self, event):
|
||||||
|
# Import default database values
|
||||||
|
importDBDefaults = loadDefaultDatabaseValues.defaultDatabaseValues()
|
||||||
|
# Import values that must exist otherwise Pyfa breaks
|
||||||
|
importDBDefaults.importRequiredDefaults()
|
||||||
|
# Import default values for damage profiles
|
||||||
|
importDBDefaults.importDamageProfileDefaults()
|
||||||
|
# Import default values for target resist profiles
|
||||||
|
importDBDefaults.importResistProfileDefaults()
|
||||||
|
|
||||||
def registerMenu(self):
|
def registerMenu(self):
|
||||||
menuBar = self.GetMenuBar()
|
menuBar = self.GetMenuBar()
|
||||||
# Quit
|
# Quit
|
||||||
self.Bind(wx.EVT_MENU, self.ExitApp, id=wx.ID_EXIT)
|
self.Bind(wx.EVT_MENU, self.ExitApp, id=wx.ID_EXIT)
|
||||||
|
# Load Default Database values
|
||||||
|
self.Bind(wx.EVT_MENU, self.loadDatabaseDefaults, id=menuBar.importDatabaseDefaultsId)
|
||||||
# Widgets Inspector
|
# Widgets Inspector
|
||||||
if config.debug:
|
if config.debug:
|
||||||
self.Bind(wx.EVT_MENU, self.openWXInspectTool, id = self.widgetInspectMenuID)
|
self.Bind(wx.EVT_MENU, self.openWXInspectTool, id = self.widgetInspectMenuID)
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ class MainMenuBar(wx.MenuBar):
|
|||||||
self.ssoLoginId = wx.NewId()
|
self.ssoLoginId = wx.NewId()
|
||||||
self.attrEditorId = wx.NewId()
|
self.attrEditorId = wx.NewId()
|
||||||
self.toggleOverridesId = wx.NewId()
|
self.toggleOverridesId = wx.NewId()
|
||||||
|
self.importDatabaseDefaultsId = wx.NewId()
|
||||||
|
|
||||||
if 'wxMac' in wx.PlatformInfo and wx.VERSION >= (3,0):
|
if 'wxMac' in wx.PlatformInfo and wx.VERSION >= (3,0):
|
||||||
wx.ID_COPY = wx.NewId()
|
wx.ID_COPY = wx.NewId()
|
||||||
@@ -73,6 +74,8 @@ class MainMenuBar(wx.MenuBar):
|
|||||||
fileMenu.Append(self.exportSkillsNeededId, "Export &Skills Needed", "Export skills needed for this fitting")
|
fileMenu.Append(self.exportSkillsNeededId, "Export &Skills Needed", "Export skills needed for this fitting")
|
||||||
fileMenu.Append(self.importCharacterId, "Import C&haracter File", "Import characters into pyfa from file")
|
fileMenu.Append(self.importCharacterId, "Import C&haracter File", "Import characters into pyfa from file")
|
||||||
fileMenu.AppendSeparator()
|
fileMenu.AppendSeparator()
|
||||||
|
fileMenu.Append(self.importDatabaseDefaultsId, "Import D&atabase Defaults", "Imports missing database defaults")
|
||||||
|
fileMenu.AppendSeparator()
|
||||||
fileMenu.Append(wx.ID_EXIT)
|
fileMenu.Append(wx.ID_EXIT)
|
||||||
|
|
||||||
# Edit menu
|
# Edit menu
|
||||||
@@ -139,7 +142,6 @@ class MainMenuBar(wx.MenuBar):
|
|||||||
attrItem = wx.MenuItem(windowMenu, self.attrEditorId, "Attribute Overrides\tCTRL+B")
|
attrItem = wx.MenuItem(windowMenu, self.attrEditorId, "Attribute Overrides\tCTRL+B")
|
||||||
attrItem.SetBitmap(BitmapLoader.getBitmap("fit_rename_small", "gui"))
|
attrItem.SetBitmap(BitmapLoader.getBitmap("fit_rename_small", "gui"))
|
||||||
windowMenu.AppendItem(attrItem)
|
windowMenu.AppendItem(attrItem)
|
||||||
|
|
||||||
editMenu.AppendSeparator()
|
editMenu.AppendSeparator()
|
||||||
editMenu.Append(self.toggleOverridesId, "Turn Overrides On")
|
editMenu.Append(self.toggleOverridesId, "Turn Overrides On")
|
||||||
|
|
||||||
@@ -172,5 +174,3 @@ class MainMenuBar(wx.MenuBar):
|
|||||||
self.Enable(self.revertCharId, char.isDirty)
|
self.Enable(self.revertCharId, char.isDirty)
|
||||||
|
|
||||||
event.Skip()
|
event.Skip()
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -239,7 +239,7 @@ class DmgPatternEditorDlg(wx.Dialog):
|
|||||||
|
|
||||||
for field in self.DAMAGE_TYPES:
|
for field in self.DAMAGE_TYPES:
|
||||||
edit = getattr(self, "%sEdit" % field)
|
edit = getattr(self, "%sEdit" % field)
|
||||||
amount = getattr(p, "%sAmount" % field)
|
amount = int(round(getattr(p, "%sAmount" % field)))
|
||||||
edit.SetValue(amount)
|
edit.SetValue(amount)
|
||||||
|
|
||||||
self.block = False
|
self.block = False
|
||||||
|
|||||||
@@ -19,6 +19,7 @@
|
|||||||
|
|
||||||
import eos.db
|
import eos.db
|
||||||
import eos.types
|
import eos.types
|
||||||
|
import eos.db.saveddata.loadDefaultDatabaseValues as loadDefaultDatabaseValues
|
||||||
import copy
|
import copy
|
||||||
|
|
||||||
class ImportError(Exception):
|
class ImportError(Exception):
|
||||||
@@ -35,10 +36,9 @@ class DamagePattern():
|
|||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
uniform = eos.db.getDamagePattern("Uniform")
|
uniform = eos.db.getDamagePattern("Uniform")
|
||||||
|
importDBDefaults = loadDefaultDatabaseValues.defaultDatabaseValues()
|
||||||
if uniform is None:
|
if uniform is None:
|
||||||
uniform = eos.types.DamagePattern(25, 25, 25, 25)
|
importDBDefaults.importRequiredDefaults()
|
||||||
uniform.name = "Uniform"
|
|
||||||
eos.db.save(uniform)
|
|
||||||
|
|
||||||
def getDamagePatternList(self):
|
def getDamagePatternList(self):
|
||||||
return eos.db.getDamagePatternList()
|
return eos.db.getDamagePatternList()
|
||||||
@@ -96,4 +96,3 @@ class DamagePattern():
|
|||||||
|
|
||||||
patterns.sort(key=lambda p: p.name)
|
patterns.sort(key=lambda p: p.name)
|
||||||
return eos.types.DamagePattern.exportPatterns(*patterns)
|
return eos.types.DamagePattern.exportPatterns(*patterns)
|
||||||
|
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ import config
|
|||||||
import os
|
import os
|
||||||
import eos.types
|
import eos.types
|
||||||
import eos.db.migration as migration
|
import eos.db.migration as migration
|
||||||
|
import eos.db.saveddata.loadDefaultDatabaseValues as loadDefaultDatabaseValues
|
||||||
|
|
||||||
class PrefetchThread(threading.Thread):
|
class PrefetchThread(threading.Thread):
|
||||||
def run(self):
|
def run(self):
|
||||||
@@ -56,3 +57,12 @@ else:
|
|||||||
# create and set version
|
# create and set version
|
||||||
eos.db.saveddata_meta.create_all()
|
eos.db.saveddata_meta.create_all()
|
||||||
eos.db.saveddata_engine.execute('PRAGMA user_version = {}'.format(migration.getAppVersion()))
|
eos.db.saveddata_engine.execute('PRAGMA user_version = {}'.format(migration.getAppVersion()))
|
||||||
|
#Import default database values
|
||||||
|
importDBDefaults = loadDefaultDatabaseValues.defaultDatabaseValues()
|
||||||
|
#Import values that must exist otherwise Pyfa breaks
|
||||||
|
importDBDefaults.importRequiredDefaults()
|
||||||
|
#Import default values for damage profiles
|
||||||
|
importDBDefaults.importDamageProfileDefaults()
|
||||||
|
#Import default values for target resist profiles
|
||||||
|
importDBDefaults.importResistProfileDefaults()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user