public override void SetImpact(CreatureEffectsImpact impact) { if (IsUpdateStats) { return; } Player Player = Creature as Player; CreatureBaseStats baseStats = Global.Global.StatsService.GetBaseStats(Player); double increase = 0.0; if (Ability.level < 1) { return; } increase = Ability.FirstLevel; for (int i = 1; i < Ability.level; i++) { increase += Ability.Step; } double percent = 1 + (increase / 100); impact.ChangeOfAccuracy = (int)(baseStats.Accuracy * percent); IsUpdateStats = true; }
public override void SetImpact(CreatureEffectsImpact impact) { if (IsUpdateStats) { return; } Player Player = Creature as Player; CreatureBaseStats baseStats = Global.Global.StatsService.GetBaseStats(Player); double increase = 0.0; double increase2 = 0.0; if (Ability.level < 1) { return; } increase = Ability.FirstLevel; increase2 = 0.6; for (int i = 1; i < Ability.level; i++) { increase += Ability.Step; increase2 += 0.6; } double percent = 1 + (increase2 / 100); Player.GameStats.SkillAttack = (int)(baseStats.SkillAttack * percent); impact.ChangeOfSkillDodgeRate = (int)increase; IsUpdateStats = true; }
public override void SetImpact(CreatureEffectsImpact impact) { if (IsUpdateStats) return; double increase = 0.0; if (Ability.level < 1) return; increase = Ability.FirstLevel; for (int i = 1; i < Ability.level; i++) { increase += Ability.Step; } impact.ChangeOfCriticalAttackRate = (int)increase; IsUpdateStats = true; }
public override void SetImpact(CreatureEffectsImpact impact) { switch (Effect.Method) { case 2: impact.MovementModificator += (short)Effect.Value; break; case 3: //Percent impact.MovementPercentModificator += Effect.Value; break; default: Player player = Creature as Player; if (player != null) { new SpChatMessage("Unknown method " + Effect.Method + " for EfSpeedInc effect.", ChatType.System).Send(player); } break; } }
public override void SetImpact(CreatureEffectsImpact impact) { if (IsUpdateStats) { return; } double increase = 0.0; if (Ability.level < 1) { return; } increase = Ability.FirstLevel; for (int i = 1; i < Ability.level; i++) { increase += Ability.Step; } impact.ChangeOfReflectChance = (int)increase; IsUpdateStats = true; }
public void SetImpact(CreatureEffectsImpact impact) { Effects.ForEach(effect => effect.SetImpact(impact)); }
public virtual void SetImpact(CreatureEffectsImpact impact) { }