Пример #1
0
            protected override void OnTarget(Mobile from, object target)
            {
                Item   stolen = null;
                object root   = null;
                bool   caught = false;

                if (target is Item)
                {
                    root   = ((Item)target).RootParent;
                    stolen = TryStealItem((Item)target, ref caught);
                }
                else
                {
                    m_Thief.SendLocalizedMessage(502710);                       // You can't steal that!
                }

                if (stolen != null)
                {
                    from.AddToBackpack(stolen);

                    StolenItem.Add(stolen, m_Thief, root as Mobile);
                }

                if (caught)
                {
                    if (root is Mobile)
                    {
                        Mobile mobRoot = (Mobile)root;

                        string message = String.Format("Vous remarquer {0} voler un objet de {1}.", m_Thief.Name, mobRoot.Name);

                        foreach (NetState ns in m_Thief.GetClientsInRange(8))
                        {
                            if (ns.Mobile != m_Thief)
                            {
                                NubiaPlayer obs = ns.Mobile as NubiaPlayer;
                                if (obs.Competences[CompType.Detection].roll(10 + (int)obs.GetDistanceToSqrt(m_Thief), true))
                                {
                                    ns.Mobile.SendMessage(message);
                                }
                            }
                        }
                    }
                }
            }