public static void SelectTarget(Mobile from, Item weapon) { if (from == null || weapon == null) return; // does this weapon have a HandSiegeAttack attachment on it already? HandSiegeAttack a = (HandSiegeAttack)XmlAttach.FindAttachment(weapon, typeof(HandSiegeAttack)); if (a == null || a.Deleted) { a = new HandSiegeAttack(); XmlAttach.AttachTo(weapon, a); } from.Target = new HandSiegeTarget(weapon, a); }
// These are the various ways in which the message attachment can be constructed. // These can be called via the [addatt interface, via scripts, via the spawner ATTACH keyword. // Other overloads could be defined to handle other types of arguments public static void SelectTarget(Mobile from, Item weapon) { if (from == null || weapon == null) { return; } // does this weapon have a HandSiegeAttack attachment on it already? HandSiegeAttack a = (HandSiegeAttack)XmlAttach.FindAttachment(weapon, typeof(HandSiegeAttack)); if (a == null || a.Deleted) { XmlAttach.AttachTo(weapon, a = new HandSiegeAttack()); } from.Target = new HandSiegeTarget(weapon, a); }
public InternalTimer(HandSiegeAttack attachment, TimeSpan delay) : base(delay) { Priority = TimerPriority.TwoFiftyMS; m_attachment = attachment; }
public HandSiegeTarget(Item weapon, HandSiegeAttack attachment) : base(30, true, TargetFlags.None) { m_weapon = weapon; m_attachment = attachment; }
public HandSiegeTarget(Item weapon, HandSiegeAttack attachment) : base(30, true, TargetFlags.None) { m_weapon = weapon; m_attachment = attachment; }
public InternalTimer(HandSiegeAttack attachment, TimeSpan delay) : base(delay) { Priority = TimerPriority.TwoFiftyMS; m_attachment = attachment; }