public Single RateTarget() { if (!_v.Target.CanBeAttacked()) { return(0); } if (_v.Target.IsZombie) { Int32 rate = BattleScriptStatusEstimate.RateStatus(BattleStatus.Death); if (!_v.Target.IsPlayer) { rate *= -1; } return(rate); } else { Single rate = 0; rate += _v.Target.MaximumHp * BattleScriptDamageEstimate.RateHpMp(_v.Target.CurrentHp, _v.Target.MaximumHp); rate += _v.Target.MaximumMp * BattleScriptDamageEstimate.RateHpMp(_v.Target.CurrentMp, _v.Target.MaximumMp); if (!_v.Target.IsPlayer) { rate *= -1; } return(rate); } }
public Single RateTarget() { _v.Context.Attack = 15; _v.Context.AttackPower = _v.Command.Item.Power; _v.Context.DefensePower = 0; if (_v.Caster.HasSupportAbility(SupportAbility1.Chemist)) { _v.Context.Attack *= 2; } _v.TargetCommand.CalcMpMagicRecovery(); Single rate = _v.Target.MpDamage * BattleScriptDamageEstimate.RateHpMp(_v.Target.CurrentMp, _v.Target.MaximumMp); if ((_v.Target.Flags & CalcFlag.MpRecovery) != CalcFlag.MpRecovery) { rate *= -1; } if (!_v.Target.IsPlayer) { rate *= -1; } return(rate); }
public Single RateTarget() { Byte itemId = (Byte)_v.Command.AbilityId; Int16 recovery = (Int16)(_v.Command.Item.Power * (ff9item.FF9Item_GetCount(itemId) + 1)); Single rate = recovery * BattleScriptDamageEstimate.RateHpMp(_v.Target.CurrentHp, _v.Target.MaximumHp); if (!_v.Target.IsPlayer) { rate *= -1; } return(rate); }