Exemple #1
0
        public override void OnResponse(NetState state, int index)
        {
            if (index < 0 || index >= Entries.Length || state.Mobile.Deleted || !state.Mobile.Alive)
            {
                m_System.End();
                return;
            }

            ItemListEntry entry = Entries[index];

            if (entry is CraftSubMenu)
            {
                m_System.ShowMenu(((CraftSubMenu)entry).SubItems);
            }
            else if (entry is CraftSystemItem)
            {
                m_System.OnItemSelected((CraftSystemItem)entry);
            }
            else if (entry is CraftMenuCallback)
            {
                ((CraftMenuCallback)entry).Callback(m_System, state.Mobile);
            }
            else
            {
                m_System.End();
            }
        }
Exemple #2
0
 private static void On_RepairItem(CraftSystem sys, Mobile from)
 {
     if (sys != null && sys is BlacksmithSystem)
     {
         if (sys.CheckTool())
         {
             from.BeginTarget(1, false, TargetFlags.None, new TargetCallback(BlacksmithSystem.RepairTarget));
             from.SendAsciiMessage("What would you like to repair?");
         }
         sys.End();
     }
 }
 private static void On_RepairItem( CraftSystem sys, Mobile from )
 {
     if ( sys != null && sys is BlacksmithSystem )
     {
         if ( sys.CheckTool() )
         {
             from.BeginTarget( 1, false, TargetFlags.None, new TargetCallback( BlacksmithSystem.RepairTarget ) );
             from.SendAsciiMessage( "What would you like to repair?" );
         }
         sys.End();
     }
 }