當前位置: 首頁>>代碼示例>>C#>>正文


C# NetState.RemoveMenu方法代碼示例

本文整理匯總了C#中Server.Network.NetState.RemoveMenu方法的典型用法代碼示例。如果您正苦於以下問題:C# NetState.RemoveMenu方法的具體用法?C# NetState.RemoveMenu怎麽用?C# NetState.RemoveMenu使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Server.Network.NetState的用法示例。


在下文中一共展示了NetState.RemoveMenu方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: MenuResponse

		public static void MenuResponse( NetState state, PacketReader pvSrc )
		{
			int serial = pvSrc.ReadInt32();
			/*int menuID = */pvSrc.ReadInt16(); // unused in our implementation
			int index  = pvSrc.ReadInt16();
			/*int itemID = */pvSrc.ReadInt16();
			/*int hue    = */pvSrc.ReadInt16();

			MenuCollection menus = state.Menus;

			for ( int i = 0; i < menus.Count; ++i )
			{
				IMenu menu = menus[i];

				if ( menu.Serial == serial )
				{
					try {
						if ( index > 0 && index <= menu.EntryLength )
							menu.OnResponse( state, index - 1 );
						else
							menu.OnCancel( state );
					} catch (Exception e) {
						log.Fatal(String.Format("Exception disarmed in menu response {0} > {1}[index]",
												state.Mobile, menu), e);
					}

					state.RemoveMenu( i );

					return;
				}
			}
		}
開發者ID:kamronbatman,項目名稱:DefianceUO-Pre1.10,代碼行數:32,代碼來源:PacketHandlers.cs

示例2: MenuResponse

		public static void MenuResponse( NetState state, PacketReader pvSrc ) {
			int serial = pvSrc.ReadInt32();
			int menuID = pvSrc.ReadInt16(); // unused in our implementation
			int index = pvSrc.ReadInt16();
			int itemID = pvSrc.ReadInt16();
			int hue = pvSrc.ReadInt16();

			index -= 1; // convert from 1-based to 0-based

			foreach ( IMenu menu in state.Menus ) {
				if ( menu.Serial == serial ) {
					state.RemoveMenu( menu );

					if ( index >= 0 && index < menu.EntryLength ) {
						menu.OnResponse( state, index );
					} else {
						menu.OnCancel( state );
					}

					break;
				}
			}
		}
開發者ID:Grimoric,項目名稱:RunUO.2.3.r1083,代碼行數:23,代碼來源:PacketHandlers.cs

示例3: MenuResponse

        public static void MenuResponse( NetState state, PacketReader pvSrc )
        {
            int serial = pvSrc.ReadInt32();
            int menuID = pvSrc.ReadInt16(); // unused in our implementation
            int index  = pvSrc.ReadInt16();
            int itemID = pvSrc.ReadInt16();
            int hue    = pvSrc.ReadInt16();

            MenuCollection menus = state.Menus;

            for ( int i = 0; i < menus.Count; ++i )
            {
                IMenu menu = menus[i];

                if ( menu.Serial == serial )
                {
                    if ( index > 0 && index <= menu.EntryLength )
                        menu.OnResponse( state, index - 1 );
                    else
                        menu.OnCancel( state );

                    state.RemoveMenu( i );

                    return;
                }
            }
        }
開發者ID:BackupTheBerlios,項目名稱:sunuo-svn,代碼行數:27,代碼來源:PacketHandlers.cs


注:本文中的Server.Network.NetState.RemoveMenu方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。