public override void OnDoubleClick( Mobile from )
		{
                        if ( !IsChildOf( from.Backpack ) ) 
                        { 
                                from.SendMessage( "You must have the egg in your backpack." ); 
                        } 
			else if ( this.AllowEvolution == true )
			{
				this.Delete();
				from.SendMessage( "You are now the proud owner of a baby Korpre3!!" );

				EvolutionKorpre3 Korpre3 = new EvolutionKorpre3();

         			Korpre3.Map = from.Map; 
         			Korpre3.Location = from.Location; 

				Korpre3.Controlled = true;

				Korpre3.ControlMaster = from;

				Korpre3.IsBonded = true;
			}
			else
			{
				from.SendMessage( "This Korpre3 is not ready." );
			}
		}
        public Korpre3MatingGump(Mobile from, Mobile mobile, EvolutionKorpre3 ed1, EvolutionKorpre3 ed2) : base(25, 50)
        {
            Closable = false;
            Dragable = false;

            m_From   = from;
            m_Mobile = mobile;
            m_ED1    = ed1;
            m_ED2    = ed2;

            AddPage(0);

            AddBackground(25, 10, 420, 200, 5054);

            AddImageTiled(33, 20, 401, 181, 2624);
            AddAlphaRegion(33, 20, 401, 181);

            AddLabel(125, 148, 1152, m_From.Name + " would like to mate " + m_ED1.Name + " with");
            AddLabel(125, 158, 1152, m_ED2.Name + ".");

            AddButton(100, 50, 4005, 4007, 1, GumpButtonType.Reply, 0);
            AddLabel(130, 50, 1152, "Allow them to mate.");
            AddButton(100, 75, 4005, 4007, 0, GumpButtonType.Reply, 0);
            AddLabel(130, 75, 1152, "Do not allow them to mate.");
        }
 public Korpre3MatingTimer( EvolutionKorpre3 owner, TimeSpan duration )
     : base(duration)
 {
     Priority = TimerPriority.OneSecond;
     ed = owner;
 }
        public Korpre3MatingGump( Mobile from, Mobile mobile, EvolutionKorpre3 ed1, EvolutionKorpre3 ed2 )
            : base(25, 50)
        {
            Closable = false;
            Dragable = false;

            m_From = from;
            m_Mobile = mobile;
            m_ED1 = ed1;
            m_ED2 = ed2;

            AddPage( 0 );

            AddBackground(25, 10, 420, 200, 9270);

            AddImageTiled( 33, 20, 401, 181, 2624 );
            AddAlphaRegion( 33, 20, 401, 181 );

            AddLabel( 125, 148, 1152, m_From.Name +" would like to mate "+ m_ED1.Name +" with" );
            AddLabel( 125, 158, 1152, m_ED2.Name +"." );

            AddButton( 100, 50, 4005, 4007, 1, GumpButtonType.Reply, 0 );
            AddLabel( 130, 50, 1152, "Allow them to mate." );
            AddButton( 100, 75, 4005, 4007, 0, GumpButtonType.Reply, 0 );
            AddLabel( 130, 75, 1152, "Do not allow them to mate." );
        }
 public Korpre3MatingTimer(EvolutionKorpre3 owner, TimeSpan duration) : base(duration)
 {
     Priority = TimerPriority.OneSecond;
     ed       = owner;
 }
        private void MatingTarget_Callback(Mobile from, object obj)
        {
            if (obj is EvolutionKorpre3 && obj is BaseCreature)
            {
                BaseCreature     bc = (BaseCreature)obj;
                EvolutionKorpre3 ed = (EvolutionKorpre3)obj;

                if (ed.Controlled == true && ed.ControlMaster == from)
                {
                    if (ed.Female == false)
                    {
                        if (ed.AllowMating == true)
                        {
                            this.Blessed  = true;
                            this.Pregnant = true;

                            m_Korpre3MatingTimer = new Korpre3MatingTimer(this, TimeSpan.FromDays(0.0));
                            m_Korpre3MatingTimer.Start();

                            m_EndMating = DateTime.Now + TimeSpan.FromDays(0.0);
                        }
                        else
                        {
                            from.SendMessage("This male Korpre3 is not old enough to mate!");
                        }
                    }
                    else
                    {
                        from.SendMessage("This Korpre3 is not male!");
                    }
                }
                else if (ed.Controlled == true)
                {
                    if (ed.Female == false)
                    {
                        if (ed.AllowMating == true)
                        {
                            if (ed.ControlMaster != null)
                            {
                                ed.ControlMaster.SendGump(new Korpre3MatingGump(from, ed.ControlMaster, this, ed));
                                from.SendMessage("You ask the owner of the Korpre if they will let your female mate with their male.");
                            }
                            else
                            {
                                from.SendMessage("This Korpre is wild.");
                            }
                        }
                        else
                        {
                            from.SendMessage("This male Korpre is not old enough to mate!");
                        }
                    }
                    else
                    {
                        from.SendMessage("This Korpre is not male!");
                    }
                }
                else
                {
                    from.SendMessage("This Korpre is wild.");
                }
            }
            else
            {
                from.SendMessage("That is not a Korpre!");
            }
        }