protected void OnTarget(Mobile m, Item item) { if (!this.CheckDoubleClick(m, true, false, 2, true) || item == null || item.Deleted || _Target == null || _Target.User != m) { return; } if (!_LayerableTypes.Any(t => item.TypeEquals(t))) { m.SendMessage(34, "You can not layer that item."); return; } if (item.Layer == TargetLayer) { m.SendMessage(34, "That sash is already layered."); return; } if (item.RootParent != m) { m.SendMessage(34, "That sash must be equipped or in your pack to layer it."); return; } if (item.IsEquipped()) { var otherItem = m.FindItemOnLayer(TargetLayer); if (otherItem != null) { m.SendMessage( 34, "You must unequip the {0} in your {1} slot before you can layer that sash.", otherItem.ResolveName(m), TargetLayer.ToString().ToLower()); return; } } item.Layer = TargetLayer; if (String.IsNullOrWhiteSpace(item.Name)) { item.Name = "a body sash [Layered]"; } else if (!item.Name.EndsWith(" [Layered]")) { item.Name += " [Layered]"; } m.SendMessage(85, "You successfully layer the sash!"); Delete(); }