Add custom wubble effect

This commit is contained in:
DarkPhoenix
2021-06-13 02:30:09 +03:00
parent fbd8d04f68
commit e3fef6f1a7
2 changed files with 24 additions and 0 deletions

View File

@@ -37,6 +37,8 @@ if ROOT_DIR not in sys.path:
sys.path.insert(0, ROOT_DIR)
GAMEDATA_SCHEMA_VERSION = 4
WUBBLE_EFFECT_ID = 1000000
def db_needs_update():
"""True if needs, false if it does not, none if we cannot check it."""
@@ -255,6 +257,13 @@ def update_db():
def processDogmaEffects():
print('processing dogmaeffects')
data = _readData('fsd_binary', 'dogmaeffects', keyIdName='effectID')
# Custom effect for wubble
data.append({
'effectID': WUBBLE_EFFECT_ID,
'effectName': 'pyfaCustomEffectWubble',
'published': False,
'isAssistance': False,
'isOffensive': False})
_addRows(data, eos.gamedata.Effect, fieldMap={'resistanceAttributeID': 'resistanceID'})
def processDogmaTypeEffects(eveTypesData):
@@ -268,6 +277,7 @@ def update_db():
for row in typeData.get('dogmaEffects', ()):
row['typeID'] = typeData['typeID']
newData.append(row)
newData.append({'typeID': 56748, 'effectID': WUBBLE_EFFECT_ID})
_addRows(newData, eos.gamedata.ItemEffect)
return newData

View File

@@ -37512,3 +37512,17 @@ class Effect8157(BaseEffect):
fit.ship.boostItemAttr(
'shield{0}DamageResonance'.format(damageType), ship.getModifiedItemAttr('eliteBonusBlackOps2'),
skill='Black Ops', **kwargs)
class Effect1000000(BaseEffect):
type = 'passive', 'projected'
@staticmethod
def handler(fit, charge, context, projectionRange, **kwargs):
if 'projected' not in context:
return
if fit.ship.getModifiedItemAttr('disallowOffensiveModifiers'):
return
fit.ship.boostItemAttr('maxVelocity', charge.getModifiedItemAttr('speedFactor'),
stackingPenalties=True, **kwargs)