mirror of
https://github.com/ServUO/ServUO
synced 2026-08-11 20:23:04 -04:00
Travesty now uses the proper weapon specials. Specials when in natual form have also been toned down Controlled creatures no longer lose focus when attacking on kill/attack control order Temporarily removed looting rights for healing as this is suspected in causing a shard lockup. It will either be refactored or investigated further Fixed issue where boat courses were not working properly and the tillerman was piloting the boat in the wrong DirectionL Boat course no longer works in the corgul region Corgul Island map now indicates when the encounter will Expire Simplified code used to determine if an item or subclass of an item can be crafted
54 lines
1.8 KiB
C#
54 lines
1.8 KiB
C#
namespace Server.Items
|
|
{
|
|
/// <summary>
|
|
/// This powerful ability requires secondary skills to activate.
|
|
/// Successful use of Shadowstrike deals extra damage to the target — and renders the attacker invisible!
|
|
/// Only those who are adept at the art of stealth will be able to use this ability.
|
|
/// </summary>
|
|
public class ShadowStrike : WeaponAbility
|
|
{
|
|
public override int BaseMana => 20;
|
|
|
|
public override double DamageScalar => 1.25;
|
|
|
|
public override bool RequiresSecondarySkill(Mobile from)
|
|
{
|
|
return false;
|
|
}
|
|
|
|
public override bool CheckSkills(Mobile from)
|
|
{
|
|
if (!base.CheckSkills(from))
|
|
return false;
|
|
|
|
Skill skill = from.Skills[SkillName.Stealth];
|
|
|
|
if (skill != null && skill.Value >= 80.0)
|
|
return true;
|
|
|
|
from.SendLocalizedMessage(1060183); // You lack the required stealth to perform that attack
|
|
|
|
return false;
|
|
}
|
|
|
|
public override void OnHit(Mobile attacker, Mobile defender, int damage)
|
|
{
|
|
if (!Validate(attacker) || !CheckMana(attacker, true))
|
|
return;
|
|
|
|
ClearCurrentAbility(attacker);
|
|
|
|
attacker.SendLocalizedMessage(1060078); // You strike and hide in the shadows!
|
|
defender.SendLocalizedMessage(1060079); // You are dazed by the attack and your attacker vanishes!
|
|
|
|
Effects.SendLocationParticles(EffectItem.Create(attacker.Location, attacker.Map, EffectItem.DefaultDuration), 0x376A, 8, 12, 9943);
|
|
attacker.PlaySound(0x482);
|
|
|
|
defender.FixedEffect(0x37BE, 20, 25);
|
|
|
|
attacker.Combatant = null;
|
|
attacker.Warmode = false;
|
|
attacker.Hidden = true;
|
|
}
|
|
}
|
|
}
|