public void Perform() { _v.WeaponPhisicalParams(); _v.Caster.PhysicalPenaltyAndBonusAttack(); _v.Target.PhysicalPenaltyAndBonusAttack(); _v.CasterCommand.BonusElement(); if (_v.CanAttackWeaponElementalCommand()) { _v.TargetCommand.CalcHpDamage(); _v.TargetCommand.TryAlterMagicStatuses(); } }
public virtual void Perform() { if (_v.Target.TryKillFrozen()) { return; } _v.PhysicalAccuracy(); if (!_v.Caster.HasSupportAbility(SupportAbility1.Accuracy) && !_v.TryPhysicalHit()) { return; } _v.WeaponPhisicalParams(_bonus); _v.BonusSupportAbilitiesAttack(); _v.Caster.PhysicalPenaltyAndBonusAttack(); _v.Target.GambleDefence(); _v.Target.PhysicalPenaltyAndBonusAttack(); if (_v.Caster.IsUnderStatus(BattleStatus.Trans) && _v.Caster.PresetId == CharacterPresetId.Steiner) { _v.Context.Attack *= 2; } _v.BonusBackstabAndPenaltyLongDistance(); _v.Caster.BonusWeaponElement(); if (_v.CanAttackWeaponElementalCommand()) { _v.TryCriticalHit(); _v.PenaltyReverseAttack(); _v.CalcPhysicalHpDamage(); _v.Target.RaiseTrouble(); _v.ConsumeMpAttack(); TryAddWeaponStatus(); } }