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


C# DesignState.OnRevised方法代碼示例

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


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

示例1: Designer_Revert

        public static void Designer_Revert( NetState state, IEntity e, EncodedReader pvSrc )
        {
            Mobile from = state.Mobile;
            DesignContext context = DesignContext.Find( from );

            if ( context != null )
            {
                /* Client chose to revert design state to currently visible state
                 *  - Revert design state
                 *     - Construct a copy of the current visible state
                 *     - Freeze fixtures in constructed state
                 *     - Assign constructed state to foundation
                 *     - If a signpost is needed, add it
                 *  - Update revision
                 *  - Update client with new state
                 */

                // Revert design state : Construct a copy of the current visible state
                DesignState copyState = new DesignState( context.Foundation.CurrentState );

                // Revert design state : Freeze fixtures in constructed state
                copyState.FreezeFixtures();

                // Revert design state : Assign constructed state to foundation
                context.Foundation.DesignState = copyState;

                // Revert design state : If a signpost is needed, add it
                context.Foundation.CheckSignpost();

                // Update revision
                copyState.OnRevised();

                // Update client with new state
                context.Foundation.SendInfoTo( state );
                copyState.SendDetailedInfoTo( state );
            }
        }
開發者ID:BackupTheBerlios,項目名稱:sunuo-svn,代碼行數:37,代碼來源:HouseFoundation.cs

示例2: Designer_Clear

        public static void Designer_Clear( NetState state, IEntity e, EncodedReader pvSrc )
        {
            Mobile from = state.Mobile;
            DesignContext context = DesignContext.Find( from );

            if ( context != null )
            {
                /* Client chose to clear the design
                 *  - Restore empty foundation
                 *     - Construct new design state from empty foundation
                 *     - Assign constructed state to foundation
                 *  - Update revision
                 *  - Update client with new state
                 */

                // Restore empty foundation : Construct new design state from empty foundation
                DesignState newDesign = new DesignState( context.Foundation, context.Foundation.GetEmptyFoundation() );

                // Restore empty foundation : Assign constructed state to foundation
                context.Foundation.DesignState = newDesign;

                // Update revision
                newDesign.OnRevised();

                // Update client with new state
                context.Foundation.SendInfoTo( state );
                newDesign.SendDetailedInfoTo( state );
            }
        }
開發者ID:BackupTheBerlios,項目名稱:sunuo-svn,代碼行數:29,代碼來源:HouseFoundation.cs

示例3: Designer_Restore

        public static void Designer_Restore( NetState state, IEntity e, EncodedReader pvSrc )
        {
            Mobile from = state.Mobile;
            DesignContext context = DesignContext.Find( from );

            if ( context != null )
            {
                /* Client chose to restore design to the last backup state
                 *  - Restore backup
                 *     - Construct new design state from backup state
                 *     - Assign constructed state to foundation
                 *  - Update revision
                 *  - Update client with new state
                 */

                // Restore backup : Construct new design state from backup state
                DesignState backupDesign = new DesignState( context.Foundation.BackupState );

                // Restore backup : Assign constructed state to foundation
                context.Foundation.DesignState = backupDesign;

                // Update revision;
                backupDesign.OnRevised();

                // Update client with new state
                context.Foundation.SendInfoTo( state );
                backupDesign.SendDetailedInfoTo( state );
            }
        }
開發者ID:BackupTheBerlios,項目名稱:sunuo-svn,代碼行數:29,代碼來源:HouseFoundation.cs

示例4: TryInsertIntoState

        private static bool TryInsertIntoState(DesignState state, int itemID, int x, int y, int z)
        {
            MultiComponentList mcl = state.Components;

            if (x < mcl.Min.X || y < mcl.Min.Y || x > mcl.Max.X || y > mcl.Max.Y)
                return false;

            mcl.Add(itemID, x, y, z);
            state.OnRevised();

            return true;
        }
開發者ID:Crome696,項目名稱:ServUO,代碼行數:12,代碼來源:DesignInsert.cs


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