Inheritance: Server.Gumps.Gump
Beispiel #1
0
        public override void OnResponse(NetState sender, RelayInfo info)
        {
            int typeId = info.ButtonID / 1000;
            int index  = info.ButtonID % 1000;

            CraftContext context = m_CraftSystem.GetContext(m_From);

            if (context == null)
            {
                return;
            }

            if (info.ButtonID == 9999)               // Back Button
            {
                CraftGump craftGump = new CraftGump(m_From, m_CraftSystem, m_Tool, null);
                m_From.SendGump(craftGump);
            }
            else if (typeId == 10)               // Make Number
            {
                m_From.Prompt = new MakeAmountPrompt(m_CraftSystem, m_CraftItem, m_Tool);
            }
            else
            {
                if (typeId == 11)                   // Make Max
                {
                    context.Total = 9999;
                }

                if (info.ButtonID != 0)                   // Make Button
                {
                    CraftGump.CraftItem(m_CraftItem, m_CraftSystem, m_From, m_Tool);
                }
            }
        }
Beispiel #2
0
        public override void OnResponse(NetState sender, RelayInfo info)
        {
            switch (info.ButtonID)
            {
            case 0:     // Back Button
            {
                CraftGump craftGump = new CraftGump(m_From, m_CraftSystem, m_Tool, null);
                m_From.SendGump(craftGump);
                break;
            }

            case 1:     // Make Button
            {
                if (m_CraftItem.TryCraft != null)
                {
                    m_CraftItem.TryCraft(m_From, m_CraftItem, m_Tool);
                    return;
                }

                int num = m_CraftSystem.CanCraft(m_From, m_Tool, m_CraftItem.ItemType);

                if (num > 0)
                {
                    m_From.SendGump(new CraftGump(m_From, m_CraftSystem, m_Tool, num));
                }
                else
                {
                    Type type = null;

                    CraftContext context = m_CraftSystem.GetContext(m_From);

                    if (context != null)
                    {
                        CraftSubResCol res      = (m_CraftItem.UseSubRes2 ? m_CraftSystem.CraftSubRes2 : m_CraftSystem.CraftSubRes);
                        int            resIndex = (m_CraftItem.UseSubRes2 ? context.LastResourceIndex2 : context.LastResourceIndex);

                        if (resIndex > -1)
                        {
                            type = res.GetAt(resIndex).ItemType;
                        }
                    }

                    m_CraftSystem.CreateItem(m_From, m_CraftItem.ItemType, type, m_Tool, m_CraftItem);
                }
                break;
            }

            case 2:                                   //Make Number
                m_From.Prompt = new MakeNumberCraftPrompt(m_From, m_CraftSystem, m_CraftItem, m_Tool);
                m_From.SendLocalizedMessage(1112576); //Please type the amount you wish to create(1 - 100): <Escape to cancel>
                break;

            case 3:     //Make Max
                AutoCraftTimer.EndTimer(m_From);
                new AutoCraftTimer(m_From, m_CraftSystem, m_CraftItem, m_Tool, 9999, TimeSpan.FromSeconds(m_CraftSystem.Delay * m_CraftSystem.MaxCraftEffect + 1.0), TimeSpan.FromSeconds(m_CraftSystem.Delay * m_CraftSystem.MaxCraftEffect + 1.0));
                break;
            }
        }
Beispiel #3
0
        public override void OnResponse(NetState sender, RelayInfo info)
        {
            //Back
            if (info.ButtonID == 0)
            {
                CraftGump craftGump = new CraftGump(m_From, m_CraftSystem, m_Tool, null);
                m_From.SendGump(craftGump);
            }

            //Guide
            else if (info.ButtonID == 1000)
            {
                string url = "http://www.uoancorp.com";
                sender.Mobile.LaunchBrowser(url);

                m_From.SendGump(new CraftGumpItem(m_From, m_CraftSystem, m_CraftItem, m_Tool));
                return;
            }

            //Make
            else
            {
                int num = m_CraftSystem.CanCraft(m_From, m_Tool, m_CraftItem.ItemType);

                if (num > 0)
                {
                    m_From.SendGump(new CraftGump(m_From, m_CraftSystem, m_Tool, num));
                }

                else
                {
                    Type type = null;

                    CraftContext context = m_CraftSystem.GetContext(m_From);

                    if (context != null)
                    {
                        CraftSubResCol res      = (m_CraftItem.UseSubRes2 ? m_CraftSystem.CraftSubRes2 : m_CraftSystem.CraftSubRes);
                        int            resIndex = (m_CraftItem.UseSubRes2 ? context.LastResourceIndex2 : context.LastResourceIndex);

                        if (resIndex > -1)
                        {
                            type = res.GetAt(resIndex).ItemType;
                        }
                    }

                    m_CraftSystem.CreateItem(m_From, m_CraftItem.ItemType, type, m_Tool, m_CraftItem);
                }
            }
        }
Beispiel #4
0
        public override void OnResponse(Mobile from, string text)
        {
            int          amount  = Utility.ToInt32(text);
            CraftContext context = m_CraftSystem.GetContext(from);

            if (amount < 1 || amount > 100)
            {
                from.SendLocalizedMessage(1112587);                  // Invalid entry.
                from.SendLocalizedMessage(501806);                   // Request cancelled.

                context.Total = 1;

                from.SendGump(new CraftGump(from, m_CraftSystem, m_Tool, null));
            }
            else
            {
                context.Total = amount;

                context.Making = m_CraftItem;
                CraftGump.CraftItem(m_CraftItem, m_CraftSystem, from, m_Tool);
            }
        }
Beispiel #5
0
        public override void OnResponse(NetState sender, RelayInfo info)
        {
            // Back Button
            if (info.ButtonID == 0)
            {
                CraftGump craftGump = new CraftGump(m_From, m_CraftSystem, m_Tool, null);
                m_From.SendGump(craftGump);
            }
            else             // Make Button
            {
                int num = m_CraftSystem.CanCraft(m_From, m_Tool, m_CraftItem.ItemType);

                if (num > 0)
                {
                    m_From.SendGump(new CraftGump(m_From, m_CraftSystem, m_Tool, num));
                }
                else
                {
                    Type type = null;

                    CraftContext context = m_CraftSystem.GetContext(m_From);

                    if (context != null)
                    {
                        CraftSubResCol res      = (m_CraftItem.UseSubRes2 ? m_CraftSystem.CraftSubRes2 : m_CraftSystem.CraftSubRes);
                        int            resIndex = (m_CraftItem.UseSubRes2 ? context.LastResourceIndex2 : context.LastResourceIndex);

                        if (resIndex > -1)
                        {
                            type = res.GetAt(resIndex).ItemType;
                        }
                    }

                    m_CraftSystem.CreateItem(m_From, m_CraftItem.ItemType, type, m_Tool, m_CraftItem);
                }
            }
        }
Beispiel #6
0
		public override void OnResponse( NetState sender, RelayInfo info )
		{
			// Back Button
			if ( info.ButtonID == 0 )
			{
				CraftGump craftGump = new CraftGump( m_From, m_CraftSystem, m_Tool, null );
				m_From.SendGump( craftGump );
                    }
			else // Make Button
                    {
				int num = m_CraftSystem.CanCraft( m_From, m_Tool, m_CraftItem.ItemType );

				if ( num > 0 )
				{
					m_From.SendGump( new CraftGump( m_From, m_CraftSystem, m_Tool, num ) );
				}
				else
				{
					Type type = null;

					CraftContext context = m_CraftSystem.GetContext( m_From );

					if ( context != null )
					{
						CraftSubResCol res = ( m_CraftItem.UseSubRes2 ? m_CraftSystem.CraftSubRes2 : m_CraftSystem.CraftSubRes );
						int resIndex = ( m_CraftItem.UseSubRes2 ? context.LastResourceIndex2 : context.LastResourceIndex );

						if ( resIndex > -1 )
							type = res.GetAt( resIndex ).ItemType;
					}

					m_CraftSystem.CreateItem( m_From, m_CraftItem.ItemType, type, m_Tool, m_CraftItem );
				}
			}
		}
Beispiel #7
0
        public override void OnResponse(NetState sender, RelayInfo info)
        {
            switch (info.ButtonID)
            {
                case 0: // Back Button
                    {
                        CraftGump craftGump = new CraftGump(this.m_From, this.m_CraftSystem, this.m_Tool, null);
                        this.m_From.SendGump(craftGump);
                        break;
                    }
                case 1: // Make Button
                    {
                        int num = this.m_CraftSystem.CanCraft(this.m_From, this.m_Tool, this.m_CraftItem.ItemType);

                        if (num > 0)
                        {
                            this.m_From.SendGump(new CraftGump(this.m_From, this.m_CraftSystem, this.m_Tool, num));
                        }
                        else
                        {
                            Type type = null;

                            CraftContext context = this.m_CraftSystem.GetContext(this.m_From);

                            if (context != null)
                            {
                                CraftSubResCol res = (this.m_CraftItem.UseSubRes2 ? this.m_CraftSystem.CraftSubRes2 : this.m_CraftSystem.CraftSubRes);
                                int resIndex = (this.m_CraftItem.UseSubRes2 ? context.LastResourceIndex2 : context.LastResourceIndex);

                                if (resIndex > -1)
                                    type = res.GetAt(resIndex).ItemType;
                            }

                            this.m_CraftSystem.CreateItem(this.m_From, this.m_CraftItem.ItemType, type, this.m_Tool, this.m_CraftItem);
                        }
                        break;
                    }
                case 2: //Make Number
                    m_From.Prompt = new MakeNumberCraftPrompt(m_From, m_CraftSystem, m_CraftItem, m_Tool);
                    m_From.SendLocalizedMessage(1112576); //Please type the amount you wish to create(1 - 100): <Escape to cancel>
                    break;
                case 3: //Make Max
                    AutoCraftTimer.EndTimer(m_From);
                    new AutoCraftTimer(m_From, m_CraftSystem, m_CraftItem, m_Tool, 9999, TimeSpan.FromSeconds(m_CraftSystem.Delay * m_CraftSystem.MaxCraftEffect + 0.5), TimeSpan.FromSeconds(m_CraftSystem.Delay * m_CraftSystem.MaxCraftEffect + 0.5));
                    break;
            }
        }
Beispiel #8
0
        public override void OnResponse( GameClient sender, RelayInfo info )
        {
            int typeId = info.ButtonID / 1000;
            int index = info.ButtonID % 1000;

            CraftContext context = m_CraftSystem.GetContext( m_From );

            if ( context == null )
                return;

            if ( info.ButtonID == 9999 ) // Back Button
            {
                CraftGump craftGump = new CraftGump( m_From, m_CraftSystem, m_Tool, null );
                m_From.SendGump( craftGump );
            }
            else if ( typeId == 10 ) // Make Number
            {
                m_From.Prompt = new MakeAmountPrompt( m_CraftSystem, m_CraftItem, m_Tool );
            }
            else
            {
                if ( typeId == 11 ) // Make Max
                    context.Total = 9999;

                if ( info.ButtonID != 0 ) // Make Button
                    CraftGump.CraftItem( m_CraftItem, m_CraftSystem, m_From, m_Tool );
            }
        }