Exemplo n.º 1
0
            protected override void OnTarget(Mobile from, object targeted)
            {
                Item targ = targeted as Item;

                if (m_pieces.Deleted || m_pieces.Quantity >= DrowCircletPieces.m_completed || targ == null)
                {
                    return;
                }

                if (m_pieces.IsChildOf(from.Backpack) && targ.IsChildOf(from.Backpack) && targ is DrowCircletPieces & targ != m_pieces)
                {
                    DrowCircletPieces targPieces = (DrowCircletPieces)targ;
                    if (targPieces.Quantity < DrowCircletPieces.m_completed)
                    {
                        if (targPieces.Quantity + m_pieces.Quantity <= DrowCircletPieces.m_completed)
                        {
                            targPieces.Quantity += m_pieces.Quantity;
                            m_pieces.Delete();
                        }
                        else
                        {
                            int delta = DrowCircletPieces.m_completed - targPieces.Quantity;
                            targPieces.Quantity += delta;
                            m_pieces.Quantity   -= delta;
                        }

                        if (targPieces.Quantity >= DrowCircletPieces.m_completed)
                        {
                            targPieces.Delete();
                            from.AddToBackpack(new DrowCirclet());
                        }
                        else
                        {
                            from.SendMessage("You attached pieces to the Circlet ");
                        }

                        return;
                    }
                    from.SendMessage("Nothing Happened");
                }
            }
Exemplo n.º 2
0
 public InternalTarget(DrowCircletPieces pieces) : base(-1, false, TargetFlags.None)
 {
     m_pieces = pieces;
 }