public override string ToString() { string armorString = base.ToString() + ", "; armorString += Location.ToString() + ", "; armorString += DefenseValue.ToString() + ", "; armorString += DefenseModifier.ToString() + ", "; armorString += StrValue.ToString() + ", "; armorString += DexValue.ToString() + ", "; armorString += IntValue.ToString(); foreach (Type t in allowableClasses) { armorString += ", " + t.Name; } return(armorString); }
public override void OnCast() { if (!CheckSequence()) { return; } Phase = 1; DefenseModifier = GetMasteryLevel() * 6; Caster.PlaySound(0x101); Caster.FixedEffect(0x37C4, 0x1, 0x8, 0x4EB, 0); Caster.PrivateOverheadMessage(MessageType.Regular, 1150, 1155988, Caster.NetState); // *You enter a thrusting stance!* BuffInfo.AddBuff(Caster, new BuffInfo(BuffIcon.Thrust, 1155989, 1155990, String.Format("{0}\t{1}\t{2}", AttackModifier.ToString(), DefenseModifier.ToString(), ScaleMana(30).ToString()))); //Your next physical attack will be increased by +~1_VAL~% damage while reducing your victim's physical attack damage by ~2_VAL~%.<br>Mana Upkeep Cost: ~3_VAL~. FinishSequence(); BeginTimer(); }
public override void OnHit(Mobile defender, ref int damage) { int currentMod = AttackModifier; if (Target != defender) { Phase = 1; DefenseModifier = (GetMasteryLevel() * 6); Target = defender; new InternalTimer(this, defender); } else { DefenseModifier += (GetMasteryLevel() * 6); Phase++; } damage = (int)(damage + (damage * (currentMod / 100.0))); defender.FixedEffect(0x36BD, 0x1, 0xE, 0x776, 0); BuffInfo.AddBuff(defender, new BuffInfo(BuffIcon.ThrustDebuff, 1155989, 1156234, TimeSpan.FromSeconds(8), defender, DefenseModifier.ToString())); // All damage from your physical attacks have been reduced by ~1_val~%. BuffInfo.AddBuff(Caster, new BuffInfo(BuffIcon.Thrust, 1155989, 1155990, String.Format("{0}\t{1}\t{2}", AttackModifier.ToString(), (GetMasteryLevel() * 6).ToString(), ScaleMana(30).ToString()))); //Your next physical attack will be increased by +~1_VAL~% damage while reducing your victim's physical attack damage by ~2_VAL~%.<br>Mana Upkeep Cost: ~3_VAL~. if (!CheckMana()) { Reset(); Expire(); } }